benwtrent commented on issue #12313: URL: https://github.com/apache/lucene/issues/12313#issuecomment-1612016406
So, I have been thinking of the current implementation and was wondering if we could instead move towards using the `join` functionality? Just to make sure I am not absolutely crazy. - `join` already requires children and parent documents to be indexed next to each other (parent docs as the last doc in the child&parent block). - When searching the graph, a separate kind of `NeighborQueue` that requires topK parent documents (ParentNeighboQueue?). This queue would require a `BitSet` of the parent doc ids. Then when a child doc is visited via the graph, we can check its score and determine the parent block via `BitSet#nextSetBit`. Tracking how many parents we have visited and their scores wouldn't be too bad from that avenue. - Top scoring documents would be the scores according to the parent docs. I guess this COULD be flexible allowing `mean`, `min`, `max` discovered child during the graph explore. -- 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