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]
