[WIP] ESQL - KNN function uses LIMIT for K, transforms to exact search when not pushed down #132944
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes how KNN works for ESQL:
k
is no longer specified as a parameterLIMIT
is used to provide the k parameterknn
can't be pushed down to Lucene, it is transformed into an exact searchnum_candidates
, users can providemin_candidates
. That is the minimum number of candidates to use, as in case the query is transformed into an exact search we can't really guarantee that we will be evaluatingnum_candidates
at the mostmin_candidates
is specified, then it is used as k