-
Notifications
You must be signed in to change notification settings - Fork 982
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
TestIndexWriterOnVMError.testUnknownError times out (potential IndexWriter deadlock with tragic exceptions) #12654
Comments
Added some println statements to
I verified that Note, both the seed and |
Is one such place where I verified the |
Well, this test is almost never "fast" for me... the conditions passed in Failure.eval are frequently called, but rarely hit the right call stack - this is particularly problematic with testCheckpoint - if I count the number of times the eval is called (for a particular random seed), it's 1201263, then nextInt(4) == 0 drops the call stack check to ~300k BUT the call stack check is successful only 50 times out of 299622 (and call stack collection is quite expensive overall). Anyway, for that particular seed you identified, @benwtrent , the index writer is simply hanging in shouldClose and never returns:
Nothing is happening in the test - it just idly waits until it times out.
The test has this code:
And clearly that assertion would have fired, if enabled. I don't know how to fix this either though. |
You can reproduce this problem from the IDE as well:
The last message is:
After that - nothing. |
This may be a legitimate bug somewhere. Maybe @mikemccand or @s1monw will know what the expected state here should be. |
In fact, I think it's this block in IW:
the problem here is - if there's another tragic exception from within IOUtils.close* call, the assignments below are never executed. |
@dweiss I agree this is the problem. We should execute that |
Thanks, Simon. I'll open up a PR. |
…IndexWriter deadlock with tragic exceptions) apache#12654
Description
CI indicated the test suite timed out. So, I ran the reproduction line locally and had to kill the test running after 5 minutes.
I seriously doubt this test should take longer than 5 minutes. I ran without the seed and it finished in seconds.
Gradle command to reproduce
The text was updated successfully, but these errors were encountered: