Sergey Shepelev
Sergey Shepelev
Sorry, I didn't think enough before saying. Of course it will block all other greenthreads. You know the tpool itself was using pipe for some time and then switched to...
Yes it's wasting tpool threads, but they're cheap and easy to increase.
@smerritt dear Sam, I'm confused, I would imagine A eventually release the lock and whole thing continues. It seems only harmful as starvation against other usages of tpool. But considering...
Reproduction script still fails, yes.
Please also show redis client version. These errors hint that sometime redis client closes connection, but also tries to use it from another thread.
Thanks for great bug report. I think pinpointed problem to `greendns.HostsResolver.query`. Not sure what's proper solution yet. FYI: you can't reliably undo monkey patch, but it doesn't change test result....
`eventlet.patcher.original("socket")` is the supported way to access unmodified modules. Sorry for the inconvenience. On Fri, Jul 8, 2022, 19:10 Miro ***@***.***> wrote: > @temoto as a workaround, is there a...
TL;DR: `import eventlet ; eventlet.monkey_patch()` is enough. It must be the first line executed by your program. `monkey_patch()` patches stdlib module `socket` used by stdlib `httplib` used by `urllib3` used...
> Make tworker check _nthreads after each execution and see if they should It's an elegant idea. You'd have to rewrite all tpool to make this "tworker actor" model consistent....
Code you posted does not reference eventlet. Please post true code.