rmuir commented on a change in pull request #315:
URL: https://github.com/apache/lucene/pull/315#discussion_r721421242
##########
File path:
lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90HnswVectorsReader.java
##########
@@ -301,55 +349,62 @@ public KnnGraphValues getGraphValues(String field) throws
IOException {
throw new IllegalArgumentException("No such field '" + field + "'");
}
FieldEntry entry = fields.get(field);
- if (entry != null && entry.indexDataLength > 0) {
+ if (entry != null && entry.graphIndexLength > 0) {
return getGraphValues(entry);
} else {
return KnnGraphValues.EMPTY;
}
}
private KnnGraphValues getGraphValues(FieldEntry entry) throws IOException {
+ if (entry.ordOffsetsByLevel == null) {
+ synchronized (entry) {
Review comment:
> and for some of these times we don't need the graph data (e.g. if we
just do CheckIndex).
Wait, that's a different bug. We should open an issue for it. CheckIndex
should be "checking" the vectors somehow (even if its just uselessly reading
the bytes).
As it documents: "As this tool checks every byte in the index, on a large
index it can take quite a long time to run."
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]