We recently upgraded our Elasticsearch cluster from 5.3 to 5.4 and found a bug when we score nested documents.
I spent some time to check the code from Elasticsearch and Lucene and I found a problem in ToParentBlockJoinQuery.BlockJoinScorer.setScoreAndFreq.
In the switch statement for the scoreMode in the case "Max" the function Math.min is used and I guess it should be Math.max.
This would explain our problem in Elasticsearch because we see exactly the problem that instead of the maximum the minimum is returned.
- is broken by
-
LUCENE-7654 To-parent block joins should implement two-phase iteration
-
- Closed
-