-
Couldn't load subscription status.
- Fork 169
[GRPC] Extend transport-grpc module to support GRPC KNN queries #2817
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
Conversation
|
@karenyrx can you please publish the PR and also see why tests are failing. It is saying some package is missing |
|
Thanks for taking a look. Per the PR description, this PR will fail until opensearch-project/OpenSearch#18897 is merged. I've just created the PR to share it out for early review. I was thinking of marking it ready for review once it's tested after the other PR is merged. |
|
please publish the PR that will help |
Can we create a GH issue for this task. This will ensure that effort to add ITs is not lost. We should also add the BWC test for the same. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mostly code looks good to me. Some minor comments.
Also adding the discussion I had with @finnegancarroll here:
- The protobuff endpoint will be present for newer OpenSearch clusters.
- If there is a mix cluster case then responsibility of sending the protobuff based search request to right nodes is on operator.
- Node to Node communication is still happing via REST.
src/main/java/org/opensearch/knn/grpc/proto/request/search/query/KNNQueryBuilderProtoUtils.java
Outdated
Show resolved
Hide resolved
src/main/java/org/opensearch/knn/grpc/proto/request/search/query/KNNQueryBuilderProtoUtils.java
Outdated
Show resolved
Hide resolved
src/main/java/org/opensearch/knn/grpc/proto/request/search/query/KNNQueryBuilderProtoUtils.java
Outdated
Show resolved
Hide resolved
...n/java/org/opensearch/knn/grpc/proto/request/search/query/KNNQueryBuilderProtoConverter.java
Show resolved
Hide resolved
|
Latest changes require opensearch-project/OpenSearch#18923 to be merged |
|
After PR was merged, confirmed local compile is working: |
Added it to the "Milestones" section in this issue: #2816 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good
Waiting for the CIs to pass before approving
|
@karenyrx some minor comments structural comments nothing major, I think PR is ready for merge once we have successful CI runs. |
…pgrade guava Signed-off-by: Karen Xu <karenxyr@gmail.com>
Signed-off-by: Karen Xu <karenxyr@gmail.com>
This reverts commit e996916. Signed-off-by: Karen Xu <karenxyr@gmail.com>
This reverts commit 590361c. Signed-off-by: Karen Xu <karenxyr@gmail.com>
conflicts Signed-off-by: Karen Xu <karenxyr@gmail.com>
Signed-off-by: Karen Xu <karenxyr@gmail.com>
Signed-off-by: Karen Xu <karenxyr@gmail.com>
|
After excluding guava and failure-access from the transport-grpc dep manually, built a knn distrib locally and confirmed guava and failure access are both still in the bundle - Build commands: Contents of the zip: Could a maintainer help approve the CI to confirm the issue is fixed? |
|
@karenyrx is the PR to fix the dependency of grpc plugin is merged? the latest failure tells me that the change of grpc is not merged as of now |
…only dep Signed-off-by: Karen Xu <karenxyr@gmail.com>
|
BWC checks are passing now. Pushing a new commit to fix the failing unit tests. |
Signed-off-by: Karen Xu <karenxyr@gmail.com>
|
pasting the followup plan as suggested by @karenyrx on the slack. Followup I plan to take on after this PR is merged:
cc: @vamshin , @shatejas , @finnegancarroll , @andrross |
|
@shatejas , @jmazanec15 can one of you take a look at this PR? |
* [GRPC] Extend transport-grpc plugin to support GRPC KNN queries and upgrade guava Signed-off-by: Karen Xu <karenxyr@gmail.com> * use @Utility and refactor into smaller methods Signed-off-by: Karen Xu <karenxyr@gmail.com> * Force bundle guava dependencies Signed-off-by: Karen Xu <karenxyr@gmail.com> * Force bundle failure access only not guava, and upgrade guava to match security plugin version Signed-off-by: Karen Xu <karenxyr@gmail.com> * Downgrade failure access back and dont force Signed-off-by: Karen Xu <karenxyr@gmail.com> * force deps for tests Signed-off-by: Karen Xu <karenxyr@gmail.com> * use 32.1.3 original Signed-off-by: Karen Xu <karenxyr@gmail.com> * move from changlog to 3.2. release notes Signed-off-by: Karen Xu <karenxyr@gmail.com> * Revert "move from changlog to 3.2. release notes" This reverts commit e996916. Signed-off-by: Karen Xu <karenxyr@gmail.com> * Revert "Revert "move from changlog to 3.2. release notes"" This reverts commit 590361c. Signed-off-by: Karen Xu <karenxyr@gmail.com> * force resolution for all, not just tests, and resolve changelog conflicts Signed-off-by: Karen Xu <karenxyr@gmail.com> * filter out jacoco Signed-off-by: Karen Xu <karenxyr@gmail.com> * exclude guava and failure access from transport-grpc Signed-off-by: Karen Xu <karenxyr@gmail.com> * upgrade failureaccess and guava to match core, and make guava a test only dep Signed-off-by: Karen Xu <karenxyr@gmail.com> * fix unit test Signed-off-by: Karen Xu <karenxyr@gmail.com> --------- Signed-off-by: Karen Xu <karenxyr@gmail.com> Signed-off-by: Doo Yong Kim <0ctopus13prime@gmail.com> Co-authored-by: Navneet Verma <navneev@amazon.com> Co-authored-by: Doo Yong Kim <0ctopus13prime@gmail.com> (cherry picked from commit 49ff9a8)
… (#2841) * [GRPC] Extend transport-grpc plugin to support GRPC KNN queries and upgrade guava * use @Utility and refactor into smaller methods * Force bundle guava dependencies * Force bundle failure access only not guava, and upgrade guava to match security plugin version * Downgrade failure access back and dont force * force deps for tests * use 32.1.3 original * move from changlog to 3.2. release notes * Revert "move from changlog to 3.2. release notes" This reverts commit e996916. * Revert "Revert "move from changlog to 3.2. release notes"" This reverts commit 590361c. * force resolution for all, not just tests, and resolve changelog conflicts * filter out jacoco * exclude guava and failure access from transport-grpc * upgrade failureaccess and guava to match core, and make guava a test only dep * fix unit test --------- (cherry picked from commit 49ff9a8) Signed-off-by: Karen Xu <karenxyr@gmail.com> Signed-off-by: Doo Yong Kim <0ctopus13prime@gmail.com> Co-authored-by: Karen X <karenxyr@gmail.com> Co-authored-by: Navneet Verma <navneev@amazon.com> Co-authored-by: Doo Yong Kim <0ctopus13prime@gmail.com>
|
Neural search build is failing |
|
Confirmed that the neural-search The ongoing opensearch-build RCs are also succeeding so far: https://build.ci.opensearch.org/blue/organizations/jenkins/distribution-build-opensearch/detail/distribution-build-opensearch/11325/pipeline The error above is potentially a caching issue where local Gradle caches were still using an older version of opensearch core where transport-grpc had not been moved to a module yet. After the core PR to move the transport-grpc plugin to a module , transport-grpc should be auto-installed/bundled with all opensearch core distributions, so it should not be unavailable. |
Description
transport-grpcmodule to support GRPC-based KNN queries.Note: This PR is dependent on OpenSearch PR #18897 moving the
transport-grpcplugin to a module.Future enhancements
In a future PR, an integration test for GRPC KNN will be added. This requires an
OpenSearchGrpcTestCasetest fixture is added to OpenSearch core, similar to the existing OpenSearchRestTestCase.Related Issues
Part of #2816
Check List
--signoff.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.