Hi all,
I have a problem and I don't find the reason, here is the crime scene:
-
A cluster with 6 nodes v.2.4.4, same kind of machine, same config, all is green
-
An index with documents (~75 millions) and nested objects in = total ~255 millions docs
-
Those documents are sometime updated by a Java application using the UpdateByQueryAction
and a groovy script in order to add or remove ID in a field.UpdateByQueryRequestBuilder contactRequestBuilder = UpdateByQueryAction.INSTANCE.newRequestBuilder(client); BulkIndexByScrollResponse contactResponse = contactRequestBuilder .source(documentType.getIndexName()) .refresh(false) .consistency(WriteConsistencyLevel.ONE) .abortOnVersionConflict(false) .script(new Script("adddel_intlong_in_listfield", ScriptService.ScriptType.FILE, "groovy", scriptParams)) .filter(contactQuery).get();
In an other hand I have a query, running from the Head plugin. When I execute
this query many times I have 3 different results, and that's my big problem:
Results are simplified by this columns [NAME, DOC VERSION, SCORE]
First batch :
A - version 4 - 16
E - version 5 - 7
Second batch :
A - version 5 - 16
H - version 4 - 10
Second batch :
Empty
What we expect is a consolidate results like:
A - version 5 - 16
H - version 4 - 10
E - version 5 - 7
NOTE: I have a same Test index with no update and only one node and we have the good results.
I wonder if this is not a problem with the versioning ? The Java code with the abortOnVersionConflict(false) ?
Any suggestion is welcome !
Thanks !
Xavier