hossman commented on issue #15239:
URL: https://github.com/apache/lucene/issues/15239#issuecomment-3357342638

   > The tests fail because setMinCompetitiveScore is being called when the 
score mode is not compatible. It is the responsibility of the collector to 
prevent such calls ... For example, see the MultiCollector.
   
   I understand why the code is failing _now_, and how the code in 
MultiCollector prevents such failures from happening (I already worked up a 
similar patch for Solr) -- but:
   
   1. As Michael pointed out above: the docs aren't clear on what happens 
if/when setMinCompetitiveScore is called used even if scoreMode == COMPLETE.
   2. My understand -- which seemed to be true in previous versions of Lucene 
-- was always that if ScoreMode.isExhaustive() was true, that effectively 
superceeded setMinCompetitiveScore and made it irrelevant. 
   3. That "expected behavior" did stop being true between 10.2 and 10.3, w/o a 
clear indication that it was an intentional change.
   
   You say: "It is the responsibility of the collector to prevent such calls" 
but I can't find anything in the docs for Collectors/ScoreMode/Scorable that 
make explicit.
   
   ----
   
   If the change in behavior in this type of situation is _EXPECTED_ as a side 
effect of the optimizations added in #14709, then that's fine -- but the docs 
should be updated to make it clear.


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