Skip to content

Conversation

@gatesn
Copy link
Contributor

@gatesn gatesn commented Oct 13, 2025

Fixes #4895

We were deadlocking when calling back into Python's parquet reader because we held the GIL within our Tokio runtime.
We should probably follow up with a pass to release the GIL in more places.

Signed-off-by: Nicholas Gates <nick@nickgates.com>
Signed-off-by: Nicholas Gates <nick@nickgates.com>
@gatesn gatesn requested a review from danking October 13, 2025 15:39
@gatesn gatesn added the changelog/fix A bug fix label Oct 13, 2025
@gatesn gatesn enabled auto-merge (squash) October 13, 2025 15:39
@AdamGS
Copy link
Contributor

AdamGS commented Oct 13, 2025

I think it'll be nice to have some block_on function that does it and takes Python, forcing callers to do it correctly. You can also limit the exposure of the runtime which will make it more obvious.

@codecov
Copy link

codecov bot commented Oct 13, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 87.56%. Comparing base (370ad2b) to head (4e7655d).
⚠️ Report is 4 commits behind head on develop.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@gatesn
Copy link
Contributor Author

gatesn commented Oct 13, 2025

Because we use into_array_iter and BlockingRuntime, it's not that easy. It can be quite abstract where the release is. We also want to release the GIL for non-block_on functions too, so not sure it's worth wrapping up

@gatesn gatesn merged commit f122d32 into develop Oct 13, 2025
40 checks passed
@gatesn gatesn deleted the ngates/gil branch October 13, 2025 15:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/fix A bug fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

vx.io.write gets stuck

4 participants