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]
