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
Killing greenlets across threads leaks a list #251
Comments
jamadden
added a commit
that referenced
this issue
Aug 7, 2021
All tested versions of Python are demonstrating a growth of one extra list.
jamadden
added a commit
that referenced
this issue
Aug 10, 2021
kraj
pushed a commit
to YoeDistro/meta-openembedded
that referenced
this issue
Oct 27, 2021
1.1.2 (2021-09-29) ================== - Fix a potential crash due to a reference counting error when Python subclasses of ``greenlet.greenlet`` were deallocated. The crash became more common on Python 3.10; on earlier versions, silent memory corruption could result. See `issue 245 <https://github.com/python-greenlet/greenlet/issues/245>`_. Patch by fygao-wish. - Fix a leak of a list object when the last reference to a greenlet was deleted from some other thread than the one to which it belonged. For this to work correctly, you must call a greenlet API like ``getcurrent()`` before the thread owning the greenlet exits: this is a long-standing limitation that can also lead to the leak of a thread's main greenlet if not called; we hope to lift this limitation. Note that in some cases this may also fix leaks of greenlet objects themselves. See `issue 251 <https://github.com/python-greenlet/greenlet/issues/251>`_. - Python 3.10: Tracing or profiling into a spawned greenlet didn't work as expected. See `issue 256 <https://github.com/python-greenlet/greenlet/issues/256>`_, reported by Joe Rickerby. Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
kraj
pushed a commit
to YoeDistro/meta-openembedded
that referenced
this issue
Oct 27, 2021
1.1.2 (2021-09-29) ================== - Fix a potential crash due to a reference counting error when Python subclasses of ``greenlet.greenlet`` were deallocated. The crash became more common on Python 3.10; on earlier versions, silent memory corruption could result. See `issue 245 <https://github.com/python-greenlet/greenlet/issues/245>`_. Patch by fygao-wish. - Fix a leak of a list object when the last reference to a greenlet was deleted from some other thread than the one to which it belonged. For this to work correctly, you must call a greenlet API like ``getcurrent()`` before the thread owning the greenlet exits: this is a long-standing limitation that can also lead to the leak of a thread's main greenlet if not called; we hope to lift this limitation. Note that in some cases this may also fix leaks of greenlet objects themselves. See `issue 251 <https://github.com/python-greenlet/greenlet/issues/251>`_. - Python 3.10: Tracing or profiling into a spawned greenlet didn't work as expected. See `issue 256 <https://github.com/python-greenlet/greenlet/issues/256>`_, reported by Joe Rickerby. Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
halstead
pushed a commit
to openembedded/meta-openembedded
that referenced
this issue
Oct 28, 2021
1.1.2 (2021-09-29) ================== - Fix a potential crash due to a reference counting error when Python subclasses of ``greenlet.greenlet`` were deallocated. The crash became more common on Python 3.10; on earlier versions, silent memory corruption could result. See `issue 245 <https://github.com/python-greenlet/greenlet/issues/245>`_. Patch by fygao-wish. - Fix a leak of a list object when the last reference to a greenlet was deleted from some other thread than the one to which it belonged. For this to work correctly, you must call a greenlet API like ``getcurrent()`` before the thread owning the greenlet exits: this is a long-standing limitation that can also lead to the leak of a thread's main greenlet if not called; we hope to lift this limitation. Note that in some cases this may also fix leaks of greenlet objects themselves. See `issue 251 <https://github.com/python-greenlet/greenlet/issues/251>`_. - Python 3.10: Tracing or profiling into a spawned greenlet didn't work as expected. See `issue 256 <https://github.com/python-greenlet/greenlet/issues/256>`_, reported by Joe Rickerby. Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
HerrMuellerluedenscheid
pushed a commit
to HerrMuellerluedenscheid/meta-openembedded
that referenced
this issue
Jan 16, 2022
1.1.2 (2021-09-29) ================== - Fix a potential crash due to a reference counting error when Python subclasses of ``greenlet.greenlet`` were deallocated. The crash became more common on Python 3.10; on earlier versions, silent memory corruption could result. See `issue 245 <https://github.com/python-greenlet/greenlet/issues/245>`_. Patch by fygao-wish. - Fix a leak of a list object when the last reference to a greenlet was deleted from some other thread than the one to which it belonged. For this to work correctly, you must call a greenlet API like ``getcurrent()`` before the thread owning the greenlet exits: this is a long-standing limitation that can also lead to the leak of a thread's main greenlet if not called; we hope to lift this limitation. Note that in some cases this may also fix leaks of greenlet objects themselves. See `issue 251 <https://github.com/python-greenlet/greenlet/issues/251>`_. - Python 3.10: Tracing or profiling into a spawned greenlet didn't work as expected. See `issue 256 <https://github.com/python-greenlet/greenlet/issues/256>`_, reported by Joe Rickerby. Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
See #245 (comment)
The text was updated successfully, but these errors were encountered: