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: [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]