Jinny-Wang commented on issue #14565:
URL: https://github.com/apache/lucene/issues/14565#issuecomment-2920601532

   Hi @mkhludnev 
   > existing FilterWeight subclass can just drag second child-side scorer and 
count and accept matching children
   Are you referring to something like this? 
   ```
     private static class ToChildBlockJoinWeight extends FilterWeight {
       private final BitSetProducer parentsFilter;
       private final boolean doScores;
       private final Weight childWeight;
   
       public ToChildBlockJoinWeight(
           Query joinQuery, Weight parentWeight, Weight childWeight, 
BitSetProducer parentsFilter, boolean doScores) {
         super(joinQuery, parentWeight);
         this.parentsFilter = parentsFilter;
         this.doScores = doScores;
         this.childWeight = childWeight;
       }
   ```
   But the parent `FilterWeight` class implements a lot of the methods 
https://github.com/apache/lucene/blob/main/lucene/core/src/java/org/apache/lucene/search/FilterWeight.java#L53
 such as isCacheable() only using the joinQuery and the parentWeight here. 
Ideally when adding a childQuery we'd want to use both parent and child weight. 
 How can we ensure that dragging a childWeight will make sure we are fully 
backwards compatible while fully utilizing the childQuery?


-- 
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

Reply via email to