New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test_handle_interrupted? may expose improper handle_interrupt logic #5314
Comments
Other tests have been masked for this reason; it seems there's a bug in |
The reason for Here is a minimal test case. In JRuby and Truffleruby this aborts the thread, in MRI this print Thread.handle_interrupt(RuntimeError=>:never){ Thread.new{ sleep 1; p :ok } }.raise Hope this can be fixed in 9.2.1. |
@larskanis Ah, thanks for the pointer, that makes sense. Should be an easy one-liner...I'll give it a shot. |
This fixes the original failure that triggered #5314 (just the test_handle_interrupted? test) but not the other cases that were already excluded here.
I fixed the case that @larskanis explained, and |
The test
test_handle_interrupted?
may fail at test/mri/ruby/test_thread.rb:862 due to flaws inThread#handle_interrupt
logic. If the handling is allowing exceptions to be thrown that should be masked, it could trigger push of:ng1
earlier in the test, causing a sporadic failure as seen in this job: https://travis-ci.org/jruby/jruby/jobs/430135641I am quarantining this test until we can determine if it is a flawed test or a bug in
handle_interrupt
.FWIW I have stepped through
handle_interrupt
and been unable to reproduce the issue locally, so it may involve more complicated timing than can be simulated in a debug session.The text was updated successfully, but these errors were encountered: