Skip to content
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

Fix potential deadlock when saving to file after logging at the end of a Python program #3920

Merged
merged 2 commits into from
Oct 19, 2023

Conversation

jleibs
Copy link
Member

@jleibs jleibs commented Oct 18, 2023

What

Certain edge cases of changing the sink can cause an internal flush, which is known to cause potential deadlocks when dropping python datastructures.

Release the GIL under .save(), .connect(), and .memory().

Resolves:

Checklist

  • I have read and agree to Contributor Guide and the Code of Conduct
  • I've included a screenshot or gif (if applicable)
  • I have tested demo.rerun.io (if applicable)
  • The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG

@jleibs jleibs added 🐍 Python API Python logging API 🪳 bug Something isn't working include in changelog labels Oct 18, 2023
@jleibs jleibs changed the title Fix deadlock when saving to file Fix potential deadlock when saving to file after logging at the end of a Python program Oct 18, 2023
@jleibs jleibs marked this pull request as ready for review October 19, 2023 11:34
@jleibs jleibs merged commit 2f4cfe3 into main Oct 19, 2023
32 of 38 checks passed
@jleibs jleibs deleted the jleibs/flush_deadlock branch October 19, 2023 11:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🪳 bug Something isn't working include in changelog 🐍 Python API Python logging API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants