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
gevent.hub.LoopExit: This operation would block forever #2010
Comments
Just to add:
Is it because a certain Ticker thread did not apply a monkey patch? |
Yes, a
That is a truly ancient version of gevent, almost 9 years old. I don't even remember enough about how it worked to hazard a guess beyond what is already documented (i.e., you have no other greenlet to switch to). I strongly encourage upgrading. Your Python version is also not supported by recent gevent releases. The last version that supported Python 2 was from 2022, but it needs at least Python 2.7.9. |
@jamadden Thank you for your reply!
no, my project didn't patch anything
sorry, I don't understand what this means. In my project, the coroutine is implemented by inheriting gevent.greenlet.Greenlet
And I have another question, Is it necessary to apply a monkey patch when gevent and threads coexist? |
Description:
Hi, @jamadden
my project is based on https://github.com/ceph/calamari. Recently, there have been errors in the cthulhu logs in our production environment
it comes from https://github.com/ceph/calamari/blob/master/cthulhu/cthulhu/manager/manager.py, which is program main Entry main() function.
All logs have no abnormal information except for the error mentioned above. I have been researching for a long time, and I have searched through all the issues but have not found the answer.
GDB debug info:
Abnormal GDB information in production environment
Normal gdb information for testing environment
By comparing their stack information, I found that thread 19 in the production environment should correspond to thread 1 in the testing environment.
thread 19 backtrace (production environment)
thread 1 backtrace (test environment)
As can be seen, thread 1 of the testing environment ran gevent's loop normally, but thread 19 of the generating environment exited abnormally.
I have read many issues and mentioned monkey patches, and I have checked calamari's code and it is true that there is no monkey patched, So I suspect that this is the reason for the error. But because I cannot reproduce this error in my testing environment, So I would like to ask if you can give me some ideas on this issue. Thank you!
The text was updated successfully, but these errors were encountered: