mayya-sharipova commented on a change in pull request #315:
URL: https://github.com/apache/lucene/pull/315#discussion_r721427046
##########
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:
I guess, I assumed that we may access Lucene90HnswVectorsReader
constructor also when we don't need to do any graph data and graph search, but
just to check an index as in `CheckIndex:checkIndex`. But may be this is a
wrong assumption outside tests, and we always access segment readers when need
to search them.
--
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]