msokolov commented on issue #15005: URL: https://github.com/apache/lucene/issues/15005#issuecomment-3140474816
I do see a problem here, which is that the re-visitation logic in AbstractKnnVectorQuery will bypass the parent/child logic specified by DiversifyingNearestChildrenKnnCollectorManager. That collector manager is returned by getKnnCollectorManager() in the initial pass, but we use the standard collector in the second pass. This was a miss when the optimistic collection was implemented, and I think I should be able to come up with a unit test demonstrating the issue. I can think of two possible solutions: one is to use whatever collector manager is returned by getKnnCollectorManager() also in the second pass - but I wonder if there was some reason we didn't do that; anyway it's the most obvious fix. The other one would be to restore the old (non-optimistic) rewrite logic and use it in cases that provide alternative collector managers. -- 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