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 concurrency issues of the _parent field data. #9030
Conversation
`_parent` field data mistakenly shared some stateful data-structures across threads. Close elastic#8396
@@ -184,6 +199,62 @@ public void testSorting() throws Exception { | |||
assertThat(((FieldDoc) topDocs.scoreDocs[7]).fields[0], nullValue()); | |||
} | |||
|
|||
public void testThreads() throws Throwable { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe just throw Exception? (the error variable generic type should then get changed as well)
Left one minor comment, otherwise LGTM |
Also this PR or the actual bug report should get the 1.4.3, 1.5 and 2.0 labels? |
@martijnvg Pushed a new commit. |
LGTM! |
I am experiencing these exceptions when performing aggregations with has_child filters. But in the same queries the doc_count of the has_child filter returns random values, usually +/- 10% of the correct amount. Disabling the filter cache greatly reduces the randomness, but not entirely. Can I check that the randomness is likely caused by this bug and will be fixed in 1.4.3? This is pretty nasty for us as customers lose a lot of trust in our product when they see numbers changing randomly, and we have no way of detecting errors. Thanks! |
_parent
field data mistakenly shared some stateful data-structures(
SortedDocValues
) across threads.Close #8396