atris commented on issue #854: Shared PQ Based Early Termination for Concurrent Search URL: https://github.com/apache/lucene-solr/pull/854#issuecomment-528247486 > I thought that the follow up for LUCENE-8939 would be to allow the sharing of the minimum score (could be extended to a minimum FieldDoc) across slices ? Sharing the minimum score (or minimum FieldDoc) requires very little synchronization while a global priority queue seems much more costly. The other advantage is that we could add this ability in the current topdocs collector like we did for LUCENE-8939. @jimczi Yes, that is the third follow up PR that I am working on presently. The advantage of a shared priority queue is that it allows accurate count of hits. For eg, if a global hit is bested, then in a shared global priority queue, it can be replaced by the better hit. However, in the case where we do not share the priority queue, the hit which just got bested will be hard to replace (since it is in a thread local queue). The easiest way would be to let that hit live as well and collect the new hit, and then let `TopDocs.merge` do the job. I think that is a great approach to have and many usecases will be satisfied by that. However, for a case of very large hits or when the user wants precise counting, we might need to go with the global shared PQ. So, maybe we should have both approaches? WDYT?
---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
