msokolov commented on code in PR #13779: URL: https://github.com/apache/lucene/pull/13779#discussion_r1765233960
########## lucene/core/src/java/org/apache/lucene/codecs/KnnVectorsWriter.java: ########## @@ -303,29 +314,45 @@ private MergedFloat32VectorValues(List<FloatVectorValuesSub> subs, MergeState me } @Override - public int docID() { - return docId; - } + public DocIndexIterator iterator() { + return new DocIndexIterator() { + private int index = -1; - @Override - public int nextDoc() throws IOException { - current = docIdMerger.next(); - if (current == null) { - docId = NO_MORE_DOCS; - } else { - docId = current.mappedDocID; - } - return docId; - } + @Override + public int docID() { + return docId; + } - @Override - public float[] vectorValue() throws IOException { - return current.values.vectorValue(); + @Override + public int index() { + return index; + } + + @Override + public int nextDoc() throws IOException { + current = docIdMerger.next(); + if (current == null) { + docId = NO_MORE_DOCS; + index = NO_MORE_DOCS; + } else { + docId = current.mappedDocID; + ++index; + } + return docId; + } + + @Override + public int advance(int target) throws IOException { + throw new UnsupportedOperationException(); + } + }; } @Override - public int advance(int target) { - throw new UnsupportedOperationException(); + public float[] vectorValue(int ord) throws IOException { + // FIXME what can we assert here? + // assert ord == iterator.index(); + return current.values.vectorValue(current.index()); Review Comment: There is something similar here in `SlowCompositeCodecReaderWrapper` - binary search across sub-values -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org