Skip to content

Conversation

tflobbe
Copy link
Member

@tflobbe tflobbe commented Sep 23, 2025

Description

Failing test that shows there is no early termination in DrillSideways when the hit collector throws CollectionTerminatedException. This test would pass in Lucene 8.10. Related to #15220

 It will do so when allowEarlyTermination is set to "true" and the hitCollector early terminates with a CollectionTerminatedException.
 Note that this only works for the sequential case, since parallel will use a separate collection for each dimension
@tflobbe
Copy link
Member Author

tflobbe commented Sep 26, 2025

Added an implementation using a dedicated collector for DrillSideways that can bubble up the early termination. This works for the sequential case, but it won't work for the concurrent case, since in concurrent, we are collecting directly with the sideways collector. For the concurrent case, each sideways facet collector should early terminate on it's own.
A FacetsCollector that early terminates on it's own is something that would even work today without any changes, it's just sometimes difficult to have FacetsCollector know when to terminate, depending on the logic that's triggering that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant