mrkm4ntr commented on PR #16133:
URL: https://github.com/apache/lucene/pull/16133#issuecomment-4612510648

   I understand the concern given the experience with #15469, but I think 
competitiveIterator() is different from the nextDoc()/intoBitSet() case that 
caused the revert. That issue was caused by inter-method dependencies in 
DocIdSetIterator's default implementations — delegating both methods broke the 
invariant between them. competitiveIterator() has no such dependency on other 
methods, so delegating it in FilterLeafCollector should be safe.
   
   FilterLeafCollector exists so that subclasses can customize only collect() 
and setScorer() without worrying about the rest. If competitiveIterator() is 
not delegated by default, every subclass that only wants to customize those two 
methods has to remember to also override competitiveIterator() — which defeats 
the purpose of having a delegator base class.


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

Reply via email to