-
Notifications
You must be signed in to change notification settings - Fork 48
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
Racy test failure: treeifying a Moved entry #83
Comments
The $ while cargo test --lib map::tree_bins::concurrent_tree_bin -- --test-threads=1 --nocapture; do :; done |
I think it reproduces more frequently if you are also running other things in the background to cause more scheduler noise (all the more reason for us to get #34 :p) |
I factored out the segfault into #84 |
So far unable to reproduce on Windows stable. The only place where The Java code also checks this condition inside the case for non- |
Bah, just got another crash that seems related with #85 applied:
|
I'm still on the road, so no tests. But the more I look at this, the more I think there isn't actually a problem. If you look at the original implementation, you'll see that it doesn't have the panics, as the Java code also doesn't trigger a failure there. They were then added during review so we notice if we try to treeify something that is not a tree bin. Now, due to the resoning from my last comment, in the Java code it must also be possible to call
So I think the semantics of the Java code here are that of a rather subtle |
Ah, that's interesting. Yeah, I think I buy it. Would you mind filing a PR that replaces those assertions with comments outlining what you wrote before for why we don't want to assert? |
I can confirm that this was fixed by #87 after having run it in a loop for a while. |
The text was updated successfully, but these errors were encountered: