Description
Is your feature request related to a problem? Please describe
In Lucene, IndexSearcher::search
api which takes Collector
(Ref: here) as input is marked for deprecation in favor of the one using CollectorManager
(Ref: here. OpenSearch uses this interface to switch between concurrent and non-concurrent query path and overwrites it in the ContextIndexSearcher
here. We should work towards removing the usage of that deprecated search
API in OpenSearch and use the slice as a mechanism to control concurrent (slice > 1 || slice = 0) and non-concurrent path (i.e. slice =1). Similarly for the request type for which we don't prefer to execute concurrently we should enforce 1 slice for those requests to keep the behavior same. Apart from these, there is a pending functional gap in force termination capability which needs to be addressed:
Describe the solution you'd like
Remove the usage of deprecated search API in OpenSearch with CollectorManager based search API.
Related component
Search
Describe alternatives you've considered
N/A
Additional context
No response
Metadata
Metadata
Assignees
Type
Projects
Status
Status