Skip to content

Conversation

@tteofili
Copy link
Contributor

@tteofili tteofili commented Sep 24, 2025

This is a followup to #127223 that leverages some changes in Lucene 10.3 to extend and reuse HnswQueueSaturationCollector to simplify code in ES for early termination on HNSW.
Very importantly, it also adds 'profile' support so that vector_ops are now correctly recorded also when early termination is enabled.

@elasticsearchmachine
Copy link
Collaborator

Hi @tteofili, I've created a changelog YAML for you.

@tteofili tteofili marked this pull request as ready for review September 24, 2025 12:52
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-search-relevance (Team:Search Relevance)

@elasticsearchmachine elasticsearchmachine added the Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch label Sep 24, 2025
Copy link
Member

@benwtrent benwtrent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you think this can work with ESDiversifyingChildren*KnnVectorQuery objects as well? I would expect it to work OK as we still delegate to the underlying collector.

Or did you test it and it not provide good results?

@tteofili
Copy link
Contributor Author

Do you think this can work with ESDiversifyingChildren*KnnVectorQuery objects as well?

yes, it works also with diversifying knn query (had run benchmarks in the original PR too), I've fixed this in 53cfeb5.

@tteofili tteofili merged commit b6a53a9 into elastic:main Sep 25, 2025
33 of 34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

>enhancement :Search Relevance/Vectors Vector search Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch v9.2.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants