On 11/10/23 15:31, Julia Kreger wrote:
I've known for a while that eventlet had some issues, but I wasn't aware of just how much was or was not going on. I guess it all seemed to be moderately under control and acceptable until a bright light was shined on it. To me, Eventlet's state doesn't seem very acceptable for the long term health of OpenStack as a project, and all consumers of OpenStack and OpenStack component technologies. Thanks JayF for raising visibility and getting this discussion started.
I think regardless of path, we will likely need to take a phased approach, and see if there is any way we can plan out a "path".
Some things I think we should be thinking about:
* What is our short term path? What are the steps we can execute upon quickly without too much interruption to projects? * Is a fork to live for a few cycles acceptable to us, or not? * Are there intermediate steps we can take as we plan and begin executing on a long term plan? * Are there "smaller", more isolated, places we can start and move forward to a desired end state faster than others? * Are we okay with an intermediate end state? What is "good enough" in this case.
Hi Julia, For me, one obvious path is to get away from eventlet in the long run (thanks Sean, for suggesting gevent...). I'm fully aware that getting away from eventlet represent a lot of work. But at the same time, monkey patching, and accessing through private function of the Python standard lib is really horrible... and if there's *ONE* thing that I could with the project to work on, that'd be it. We've known this for years (since the beginning of OpenStack, in fact), and the technical dept is just accumulating. If this is kept unaddressed, it will continue to bite hard on each Python interpreter release. But in the mean while, Python 3.12 support *MUST* be added to Eventlet ASAP. The transition to 3.12 in Debian Unstable (and soonish Ubuntu) has already started, and I'm getting bugs report related to Eventlet already (which I cannot fix until there's a build of greenlet with 3.12 support...). Cheers, Thomas Goirand (zigo)