-
-
Notifications
You must be signed in to change notification settings - Fork 925
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
[Truffle] Threads may not arrive at safepoint and prevent shutdown #3124
Comments
A stack dump from f491c64:
|
It looks like the jruby/truffle/src/main/java/org/jruby/truffle/nodes/core/ConditionVariableNodes.java Line 153 in 452dfcf
|
OK, so one problem here is standard debugging tools do not show Fix: re-acquire that lock interruptibly, so implement our own Condition variable or use the Ruby code. |
Should be fixed now. |
I've recently run into an issue where a set of threads block on a queue. In the meanwhile, the main thread requires a file, which release the GIL, and one of the worker threads then acquires the GIL. I've traced, but unfortunately I can't really figure out what's happening in between. Of the three threads in the following example, 2 end up arriving at the safepoint, while the third is blocked on a ConditionVariable#wait call.
The text was updated successfully, but these errors were encountered: