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

add test which is broken with gevent #3669

Merged
merged 2 commits into from
Dec 24, 2023
Merged

Conversation

davidhewitt
Copy link
Member

Minimal reproduction of the case described in #3668

Here is a pretty typical output from the test:

start 0 0
gevent sleep 0 0
start 1 0
gevent sleep 1 0
after gevent sleep 0 0
dropping: ['key', ArbitraryClass(0, 0), 'ArbitraryClass(0, 0)', 'key', ArbitraryClass(1, 0), 'ArbitraryClass(1, 0)', None, 'ArbitraryClass(0, 0)']
del 0 0
del 1 0
end 0 0
start 0 1
gevent sleep 0 1
after gevent sleep 1 0
Fatal Python error: Segmentation fault

... i.e. after task 0 completes, task 1's pool of references is also freed. The crash when task 1 resumes is plain and simple UB; I have seen both segfaults and assertion failures.

Copy link

codspeed-hq bot commented Dec 19, 2023

CodSpeed Performance Report

Merging #3669 will not alter performance

Comparing davidhewitt:gevent (49d7718) with main (e99058a)

Summary

✅ 78 untouched benchmarks

pytests/src/misc.rs Outdated Show resolved Hide resolved
@davidhewitt davidhewitt marked this pull request as ready for review December 23, 2023 22:10
@davidhewitt davidhewitt added the CI-skip-changelog Skip checking changelog entry label Dec 23, 2023
@adamreichold adamreichold added this pull request to the merge queue Dec 24, 2023
Merged via the queue into PyO3:main with commit 7d24584 Dec 24, 2023
37 of 38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI-skip-changelog Skip checking changelog entry
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants