[ https://issues.apache.org/jira/browse/LUCENE-10397?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17566298#comment-17566298 ]
Lu Xugang edited comment on LUCENE-10397 at 7/13/22 12:33 PM: -------------------------------------------------------------- It seems like this issue has been resolved after https://github.com/apache/lucene/pull/926 merged by [~abenedetti] , I did not review the code but at least the test above now is working well, maybe we should closed this issue? was (Author: chrislu): It seems like this issue has been resolved after https://github.com/apache/lucene/pull/926 merged , I did not review the code but at least the test above now is working well, maybe we should closed this issue? > KnnVectorQuery doesn't tie break by doc ID > ------------------------------------------ > > Key: LUCENE-10397 > URL: https://issues.apache.org/jira/browse/LUCENE-10397 > Project: Lucene - Core > Issue Type: Bug > Reporter: Adrien Grand > Priority: Minor > Time Spent: 1h 50m > Remaining Estimate: 0h > > I was expecting KnnVectorQUery to tie-break by doc ID so that if multiple > documents get the same score then the ones that have the lowest doc ID would > get returned first, similarly to how SortField.SCORE also tie-breaks by doc > ID. > However the following test fails, suggesting that it is not the case. > {code:java} > public void testTieBreak() throws IOException { > try (Directory d = newDirectory()) { > try (IndexWriter w = new IndexWriter(d, new IndexWriterConfig())) { > for (int j = 0; j < 5; j++) { > Document doc = new Document(); > doc.add( > new KnnVectorField("field", new float[] {0, 1}, > VectorSimilarityFunction.DOT_PRODUCT)); > w.addDocument(doc); > } > } > try (IndexReader reader = DirectoryReader.open(d)) { > assertEquals(1, reader.leaves().size()); > IndexSearcher searcher = new IndexSearcher(reader); > KnnVectorQuery query = new KnnVectorQuery("field", new float[] {2, > 3}, 3); > TopDocs topHits = searcher.search(query, 3); > assertEquals(0, topHits.scoreDocs[0].doc); > assertEquals(1, topHits.scoreDocs[1].doc); > assertEquals(2, topHits.scoreDocs[2].doc); > } > } > } > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org