-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding the SearchPhaseResultsProcessor interface in Search Pipeline #7283
Adding the SearchPhaseResultsProcessor interface in Search Pipeline #7283
Conversation
b70ef2e
to
7945f01
Compare
Gradle Check (Jenkins) Run Completed with:
|
Gradle Check (Jenkins) Run Completed with:
|
server/src/main/java/org/opensearch/search/pipeline/SearchPipelineService.java
Outdated
Show resolved
Hide resolved
7945f01
to
81f1a4a
Compare
Gradle Check (Jenkins) Run Completed with:
|
@navneet1v needs rebase please |
@navneet1v I just merged the latest from main, which should fix the tests now. |
Gradle Check (Jenkins) Run Completed with:
|
I'm working on resolving the (many) conflicts that arose from #8053 getting merged. I'll post the new commits shortly. |
81baeda
to
096417c
Compare
Ugh -- I think I clobbered @navneet1v's recent changes by force-pushing after rebase. I'm going to see if I can recover them (or reapply them manually). |
096417c
to
81baeda
Compare
Gradle Check (Jenkins) Run Completed with:
|
Gradle Check (Jenkins) Run Completed with:
|
Signed-off-by: Michael Froh <[email protected]>
Gradle Check (Jenkins) Run Completed with:
|
The backport to
To backport manually, run these commands in your terminal: # Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/backport-2.x 2.x
# Navigate to the new working tree
pushd ../.worktrees/backport-2.x
# Create a new branch
git switch --create backport/backport-7283-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 b33979a4d95f728ee3080eb6983d93e024fb7ba2
# Push it to GitHub
git push --set-upstream origin backport/backport-7283-to-2.x
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/backport-2.x Then, create a pull request where the |
@navneet1v needs manual backport to |
Yes I will take care of that. Thanks everyone. This PR was pending for long time and took more effort than I expected. |
…pensearch-project#7283) * Initial code for adding the SearchPhaseInjectorProcessor interface in Search Pipeline Signed-off-by: Navneet Verma <[email protected]> * Pass PipelinedRequest to SearchAsyncActions We should resolve a search pipeline once at the start of a search request and then propagate that pipeline through the async actions. When completing a search phase, we will then use that pipeline to inject behavior (if applicable). Signed-off-by: Michael Froh <[email protected]> * Renamed SearchPhaseInjectorProcessor to SearchPhaseResultsProcessor and fixed the comments Signed-off-by: Navneet Verma <[email protected]> * Make PipelinedSearchRequest extend SearchRequest Rather than wrapping a SearchRequest in a PipelinedSearchRequest, changes are less intrusive if we say that a PipelinedSearchRequest "is a" SearchRequest. Signed-off-by: Michael Froh <[email protected]> * Revert code change from merge conflict Signed-off-by: Michael Froh <[email protected]> * Updated the changelog with more appropiate wording for the change. Signed-off-by: Navneet Verma <[email protected]> * Fixed Typos in the code Signed-off-by: Navneet Verma <[email protected]> * Fixing comments relating to return of SearchPhaseResults from processor Signed-off-by: Navneet Verma <[email protected]> * Moved SearchPhaseName enum in separate class and fixed comments. Signed-off-by: Navneet Verma <[email protected]> * Resolve remaining merge conflict Signed-off-by: Michael Froh <[email protected]> --------- Signed-off-by: Navneet Verma <[email protected]> Signed-off-by: Michael Froh <[email protected]> Co-authored-by: Michael Froh <[email protected]> Co-authored-by: Andrew Ross <[email protected]>
…7283) (#8512) Add new search pipeline processor type, SearchPhaseResultsProcessor, that can modify the result of one search phase before starting the next phase. Along with this, added the code to resolve the Search pipeline once and added new SearchRequest type PipelinedRequest. Backport of PR: #7283 --------- Signed-off-by: Navneet Verma <[email protected]> Co-authored-by: Michael Froh <[email protected]> Co-authored-by: Andrew Ross <[email protected]>
…pensearch-project#7283) * Initial code for adding the SearchPhaseInjectorProcessor interface in Search Pipeline Signed-off-by: Navneet Verma <[email protected]> * Pass PipelinedRequest to SearchAsyncActions We should resolve a search pipeline once at the start of a search request and then propagate that pipeline through the async actions. When completing a search phase, we will then use that pipeline to inject behavior (if applicable). Signed-off-by: Michael Froh <[email protected]> * Renamed SearchPhaseInjectorProcessor to SearchPhaseResultsProcessor and fixed the comments Signed-off-by: Navneet Verma <[email protected]> * Make PipelinedSearchRequest extend SearchRequest Rather than wrapping a SearchRequest in a PipelinedSearchRequest, changes are less intrusive if we say that a PipelinedSearchRequest "is a" SearchRequest. Signed-off-by: Michael Froh <[email protected]> * Revert code change from merge conflict Signed-off-by: Michael Froh <[email protected]> * Updated the changelog with more appropiate wording for the change. Signed-off-by: Navneet Verma <[email protected]> * Fixed Typos in the code Signed-off-by: Navneet Verma <[email protected]> * Fixing comments relating to return of SearchPhaseResults from processor Signed-off-by: Navneet Verma <[email protected]> * Moved SearchPhaseName enum in separate class and fixed comments. Signed-off-by: Navneet Verma <[email protected]> * Resolve remaining merge conflict Signed-off-by: Michael Froh <[email protected]> --------- Signed-off-by: Navneet Verma <[email protected]> Signed-off-by: Michael Froh <[email protected]> Co-authored-by: Michael Froh <[email protected]> Co-authored-by: Andrew Ross <[email protected]>
…pensearch-project#7283) * Initial code for adding the SearchPhaseInjectorProcessor interface in Search Pipeline Signed-off-by: Navneet Verma <[email protected]> * Pass PipelinedRequest to SearchAsyncActions We should resolve a search pipeline once at the start of a search request and then propagate that pipeline through the async actions. When completing a search phase, we will then use that pipeline to inject behavior (if applicable). Signed-off-by: Michael Froh <[email protected]> * Renamed SearchPhaseInjectorProcessor to SearchPhaseResultsProcessor and fixed the comments Signed-off-by: Navneet Verma <[email protected]> * Make PipelinedSearchRequest extend SearchRequest Rather than wrapping a SearchRequest in a PipelinedSearchRequest, changes are less intrusive if we say that a PipelinedSearchRequest "is a" SearchRequest. Signed-off-by: Michael Froh <[email protected]> * Revert code change from merge conflict Signed-off-by: Michael Froh <[email protected]> * Updated the changelog with more appropiate wording for the change. Signed-off-by: Navneet Verma <[email protected]> * Fixed Typos in the code Signed-off-by: Navneet Verma <[email protected]> * Fixing comments relating to return of SearchPhaseResults from processor Signed-off-by: Navneet Verma <[email protected]> * Moved SearchPhaseName enum in separate class and fixed comments. Signed-off-by: Navneet Verma <[email protected]> * Resolve remaining merge conflict Signed-off-by: Michael Froh <[email protected]> --------- Signed-off-by: Navneet Verma <[email protected]> Signed-off-by: Michael Froh <[email protected]> Co-authored-by: Michael Froh <[email protected]> Co-authored-by: Andrew Ross <[email protected]> Signed-off-by: Shivansh Arora <[email protected]>
Description
Add new search pipeline processor type, SearchPhaseResultsProcessor, that can modify the result of one search phase before starting the next phase.
Along with this, added the code to resolve the Search pipeline once and added new SearchRequest type PipelinedRequest.
Issues Resolved
RFC: opensearch-project/neural-search#152
Check List
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.