Autotest doesn't respond to Ctrl-C #23

Open
duckpuppy opened this Issue Apr 25, 2011 · 15 comments

Projects

None yet

6 participants

@duckpuppy

Ubuntu 11.04 beta and 10.10 (these are the two machines I've reproduced this on).

Autotest has stopped responding to Ctrl-C on these machines. I've tried autotest 4.4.6 and autotest-standaline 4.5.5. If I type Ctrl-C, then Ctrl-Z to background autotest, then fg to bring it back, it will see the Ctrl-C I have typed. Also, if I use strace to connect to a "hung" autotest process, I see a constant string of "sched_yield() =0" calls. What's kinda weird is that once strace is running, I can go to the terminal running autotest, and Ctrl-C works.

Tests run fine... I just can't kill autotest or force a retest with Ctrl-C.

@duckpuppy

Using either "autotest -b" or "bundle exec autotest" seems to make it more stable, though I have had one instance of it failing to respond to Ctrl-C even then.

@grosser
Owner
grosser commented Apr 25, 2011

are you using autotest (then go to zentest) or autotest-standalone ?

@duckpuppy

autotest-standalone.

Also, "bundle exec autotest" has started failing as well... don't know why it worked for a while, but now it isn't working either.

@duckpuppy

So, a little more playing around seems to indicate that it's not autotest by itself, but any notification plugin that uses notify-send to send OS notifications. I'm not sure if the bug lies within Ubuntu 11.04's notify-send or if it's some itnteraction between notify-send, autotest itself, or the notification plugin (I've checked autotest-notification and autotest-growl and if either are installed - not even actually used, but just installed, Ctrl-C stops working), but it's certainly messing with the autotest keyboard handler for some reason.

@grosser
Owner
grosser commented Apr 26, 2011

the "only installed" part sounds scary, the should not be loaded by default...
the only kinda strange thing https://github.com/grosser/autotest/blob/master/lib/autotest/notify.rb does is to add an hook, can you try to e.g. gem-edit parts out and see if that solves anything ?

@schadenfred

Duck, I've noticed the same problem with 11.04 but it's fine on Ubuntu 10.10. I'm running rails 3.0.7 with autotest and Ruby 1.9.2. I notice that when I revert down to ruby 1.8.7 autotest works fine, though, which makes me suspect it's an issue with ruby/ubuntu rather than autotest. Hope this helps.

@bct
bct commented May 26, 2011

Confirming fdschoeneman's experience, I also didn't experience this problem on Ubuntu 11.04 until I upgraded to Ruby 1.9.2.

@bct
bct commented May 26, 2011

It doesn't seem to be related to notifications for me, I don't have either of the mentioned gems installed and "lib/autotest/notify.rb" isn't being loaded.

@bct
bct commented May 26, 2011

I've discovered that if I delete the Find.prune line in find_files everything works normally. Bizarre.

@schadenfred

bct -- I think this might be the bug: http://www.ruby-forum.com/topic/1569599

How did you discover that? You must be a ninja.

@subhashb

Confirming that the bug is with Ruby 1.9.2, on Ubuntu 11.04. Either Ubuntu 10.10 or Ruby 1.8.7 works fine.
Removing Find.prune does solve the problem of Ctrl-C, but autotest then starts firing tests for the last spec file repeatedly.

bct - Does autotest work perfectly for you after commenting? Does this problem of one spec file repeatedly getting fired, happen on your system too?

@bct
bct commented Jun 13, 2011

SubhashB, I experience that too. It's still better than the lockups, though.

fdschoeneman, it does look like a very similar bug. Do you think there's value in mentioning it on that report?

@schadenfred

bct,

Probably won't hurt. I put a link to this thread in the comments for that bug. Good thinking.

@subhashb

Autotest has started working now. I am still on Ruby 1.9.2 and Ubuntu 11.04. Maybe a recent upgrade in lib-notify package fixed the problem... Not sure though.
I am able to run tests successfully now.

@eWizardII

Yea for the time being best to just use 1.8.7, I couldn't get it to work on 1.9.2 either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment