[Plugins] Relax jar hell check when extended plugins share transitive dependencies#20103
Conversation
…odule/plugin Signed-off-by: Karen X <karenxyr@gmail.com>
a2af18b to
d4e646b
Compare
|
❌ Gradle check result for d4e646b: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
WalkthroughRelaxed the jar-hell check: when extended plugins share overlapping classpath URLs the code now logs an informational message with the plugin name and overlapping URLs instead of throwing an IllegalStateException, allowing loading to continue; added CHANGELOG entry documenting the change. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
Comment |
|
This PR raised before coderabbitai is online on the repo, so I manually trigger it here. |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
server/src/main/java/org/opensearch/plugins/PluginsService.java (1)
728-735: Relaxed transitive-overlap check matches intended semantics; logging looks correctThe new info log on Lines [731-735] for
intersectionbetween accumulatedurlsandpluginUrlscorrectly turns what used to be a fatal “duplicate codebases among extended plugins” error into diagnostic output, while:
- Still throwing when the candidate plugin’s own
bundle.urlsintersect any extended plugin’s URLs (real duplicate codebase for the plugin itself).- Still running
JarHell.checkJarHellon:
- The growing union of extended-plugins’ URLs, and
- The union of those URLs plus the bundle’s own URLs, and
- The plugin+core union later in the method.
This cleanly solves the “multiple plugins extend the same ancestor/module” diamond case without weakening actual jar-hell protection.
If you expect many such configurations in production, you might consider downgrading this to
debugonce the behavior is well validated to avoid noisy logs, butinfois reasonable initially for visibility.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
CHANGELOG.md(1 hunks)server/src/main/java/org/opensearch/plugins/PluginsService.java(1 hunks)
🔇 Additional comments (1)
CHANGELOG.md (1)
36-36: Changelog entry accurately documents the behavioral changeThe new “Relax jar hell check…” bullet on Line [36] is clear, correctly scoped to extended plugins sharing transitive dependencies, and links to the right PR. No further edits needed.
Signed-off-by: Karen X <karenxyr@gmail.com>
|
❌ Gradle check result for 08166c6: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
|
❌ Gradle check result for 08166c6: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
|
❌ Gradle check result for 08166c6: null Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
server/src/test/java/org/opensearch/plugins/PluginsServiceTests.java (1)
558-558: Prefer hamcrest matcher for consistency.The file predominantly uses hamcrest matchers (e.g., line 668, line 961). Consider using
assertThat(deps, notNullValue())instead ofassertNotNull(deps)to maintain consistency with the rest of the test file.🔎 Suggested change
- assertNotNull(deps); + assertThat(deps, notNullValue());
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
server/src/test/java/org/opensearch/plugins/PluginsServiceTests.java(1 hunks)
🧰 Additional context used
🧬 Code graph analysis (1)
server/src/test/java/org/opensearch/plugins/PluginsServiceTests.java (2)
server/src/main/java/org/opensearch/plugins/PluginsService.java (1)
PluginsService(91-894)libs/common/src/main/java/org/opensearch/common/bootstrap/JarHell.java (1)
JarHell(77-323)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (20)
- GitHub Check: gradle-check
- GitHub Check: precommit (25, ubuntu-24.04-arm)
- GitHub Check: precommit (25, macos-15-intel)
- GitHub Check: precommit (21, windows-2025, true)
- GitHub Check: precommit (25, macos-15)
- GitHub Check: precommit (25, windows-latest)
- GitHub Check: precommit (21, macos-15-intel)
- GitHub Check: precommit (21, windows-latest)
- GitHub Check: precommit (21, ubuntu-24.04-arm)
- GitHub Check: precommit (25, ubuntu-latest)
- GitHub Check: precommit (21, ubuntu-latest)
- GitHub Check: precommit (21, macos-15)
- GitHub Check: assemble (21, ubuntu-latest)
- GitHub Check: assemble (25, ubuntu-latest)
- GitHub Check: assemble (25, ubuntu-24.04-arm)
- GitHub Check: assemble (21, ubuntu-24.04-arm)
- GitHub Check: assemble (25, windows-latest)
- GitHub Check: assemble (21, windows-latest)
- GitHub Check: Analyze (java)
- GitHub Check: detect-breaking-change
🔇 Additional comments (1)
server/src/test/java/org/opensearch/plugins/PluginsServiceTests.java (1)
554-559: Test correctly reflects the relaxed jar-hell behavior.The updated test properly verifies that shared transitive dependencies (diamond dependency scenario) no longer throw an exception and that the transitive URL tracking still functions correctly. The assertions confirm both the plugin's own JAR and the shared dependency JAR are included in the transitive dependency set.
|
❌ Gradle check result for 5ef379c: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
|
❌ Gradle check result for 5ef379c: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
|
❌ Gradle check result for 5ef379c: null Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
|
❕ Gradle check result for 5ef379c: UNSTABLE Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #20103 +/- ##
============================================
+ Coverage 73.25% 73.27% +0.02%
- Complexity 71790 71792 +2
============================================
Files 5795 5795
Lines 328299 328300 +1
Branches 47279 47279
============================================
+ Hits 240489 240556 +67
+ Misses 68471 68421 -50
+ Partials 19339 19323 -16 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
* Add preserve_dots paramater to ObjectMapper Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Extend RootObjectMapper to support preserve_dots Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Implement flat field parsing in DocumentParser Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Implement validation in MapperService Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Add index template support for preserve_dots tests Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * error handling with descriptive messages Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing redundancy Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more edge cases, autoflatten and test cases Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more edge cases, autoflatten and test cases Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding autoflattening at nested level as well Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing gradle spotless checks Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Stab at optimizing the code via removing redundant code and fixing multiple functions Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing splitPathRespectingDisableObjects and trying to achieve it through existing getMapper function Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Revert "Reduction of if else statements by extracting conditional logic into focused methods" This reverts commit 9ca7e6d. Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * [Plugins] Relax jar hell check when extended plugins share transitive dependencies (#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com> * Reverting change in CHANGELOG.md Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Add integ test for simulating node join left event when data node clu… (#19907) * Add integration test for simulating node join left event when data node cluster state publication lag because the cluster applier thread being busy. Signed-off-by: Swetha Guptha <gupthasg@amazon.com> Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding few more UTs in DocumentParserTests and ObjectMapperTests for code patch coverage Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding changes in CHANGELOG.md Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more tests for code patch coverage for DocumentParser and ObjectMapper Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow1 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow2 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow3 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more tests for code patch coverage for DocumentParser and ObjectMapper second round and refactoring of code especially dynamic update portion Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing dead end code from Document Parser related to parseArray and parseObject Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow4 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow4 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow5 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow6 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow6 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow7 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow8 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing breaking changes in ObjectMapper builder method Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing spotless checks Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow9 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow9 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Handling v2 templates for dotted field feature and stab at using existing methods in switch case Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Handling v2 templates for dotted field feature and stab at using existing methods in switch case Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing org.opensearch.indices.template.SimpleIndexTemplateIT IT Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing array mapping with nested disable_objects as true Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Addressed review comments and removed redundant code Signed-off-by: Mohit Kumar <mohitamg@amazon.com> --------- Signed-off-by: Mohit Kumar <mohitamg@amazon.com> Signed-off-by: mohit10011999 <pinkijyoti1995@gmail.com> Signed-off-by: Karen X <karenxyr@gmail.com> Signed-off-by: Swetha Guptha <gupthasg@amazon.com> Co-authored-by: Mohit Kumar <mohitamg@amazon.com> Co-authored-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com> Co-authored-by: Swetha Guptha <gupthasg@amazon.com>
… dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com>
…rch-project#19958) * Add preserve_dots paramater to ObjectMapper Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Extend RootObjectMapper to support preserve_dots Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Implement flat field parsing in DocumentParser Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Implement validation in MapperService Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Add index template support for preserve_dots tests Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * error handling with descriptive messages Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing redundancy Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more edge cases, autoflatten and test cases Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more edge cases, autoflatten and test cases Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding autoflattening at nested level as well Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing gradle spotless checks Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Stab at optimizing the code via removing redundant code and fixing multiple functions Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing splitPathRespectingDisableObjects and trying to achieve it through existing getMapper function Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Revert "Reduction of if else statements by extracting conditional logic into focused methods" This reverts commit 9ca7e6d. Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * [Plugins] Relax jar hell check when extended plugins share transitive dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com> * Reverting change in CHANGELOG.md Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Add integ test for simulating node join left event when data node clu… (opensearch-project#19907) * Add integration test for simulating node join left event when data node cluster state publication lag because the cluster applier thread being busy. Signed-off-by: Swetha Guptha <gupthasg@amazon.com> Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding few more UTs in DocumentParserTests and ObjectMapperTests for code patch coverage Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding changes in CHANGELOG.md Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more tests for code patch coverage for DocumentParser and ObjectMapper Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow1 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow2 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow3 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more tests for code patch coverage for DocumentParser and ObjectMapper second round and refactoring of code especially dynamic update portion Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing dead end code from Document Parser related to parseArray and parseObject Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow4 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow4 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow5 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow6 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow6 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow7 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow8 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing breaking changes in ObjectMapper builder method Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing spotless checks Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow9 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow9 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Handling v2 templates for dotted field feature and stab at using existing methods in switch case Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Handling v2 templates for dotted field feature and stab at using existing methods in switch case Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing org.opensearch.indices.template.SimpleIndexTemplateIT IT Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing array mapping with nested disable_objects as true Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Addressed review comments and removed redundant code Signed-off-by: Mohit Kumar <mohitamg@amazon.com> --------- Signed-off-by: Mohit Kumar <mohitamg@amazon.com> Signed-off-by: mohit10011999 <pinkijyoti1995@gmail.com> Signed-off-by: Karen X <karenxyr@gmail.com> Signed-off-by: Swetha Guptha <gupthasg@amazon.com> Co-authored-by: Mohit Kumar <mohitamg@amazon.com> Co-authored-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com> Co-authored-by: Swetha Guptha <gupthasg@amazon.com>
…rch-project#19958) * Add preserve_dots paramater to ObjectMapper Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Extend RootObjectMapper to support preserve_dots Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Implement flat field parsing in DocumentParser Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Implement validation in MapperService Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Add index template support for preserve_dots tests Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * error handling with descriptive messages Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing redundancy Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more edge cases, autoflatten and test cases Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more edge cases, autoflatten and test cases Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding autoflattening at nested level as well Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing gradle spotless checks Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Stab at optimizing the code via removing redundant code and fixing multiple functions Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing splitPathRespectingDisableObjects and trying to achieve it through existing getMapper function Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Reduction of if else statements by extracting conditional logic into focused methods Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Revert "Reduction of if else statements by extracting conditional logic into focused methods" This reverts commit 9ca7e6d. Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * [Plugins] Relax jar hell check when extended plugins share transitive dependencies (opensearch-project#20103) * plugin service allow multiple extended plugins both extend the same module/plugin Signed-off-by: Karen X <karenxyr@gmail.com> * fix tests Signed-off-by: Karen X <karenxyr@gmail.com> --------- Signed-off-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com> * Reverting change in CHANGELOG.md Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Add integ test for simulating node join left event when data node clu… (opensearch-project#19907) * Add integration test for simulating node join left event when data node cluster state publication lag because the cluster applier thread being busy. Signed-off-by: Swetha Guptha <gupthasg@amazon.com> Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding few more UTs in DocumentParserTests and ObjectMapperTests for code patch coverage Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding changes in CHANGELOG.md Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more tests for code patch coverage for DocumentParser and ObjectMapper Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow1 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow2 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow3 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Adding more tests for code patch coverage for DocumentParser and ObjectMapper second round and refactoring of code especially dynamic update portion Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Removing dead end code from Document Parser related to parseArray and parseObject Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow4 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow4 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow5 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow6 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow6 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow7 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow8 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing breaking changes in ObjectMapper builder method Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing spotless checks Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow9 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Trigger workflow9 Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Handling v2 templates for dotted field feature and stab at using existing methods in switch case Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Handling v2 templates for dotted field feature and stab at using existing methods in switch case Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing org.opensearch.indices.template.SimpleIndexTemplateIT IT Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Fixing array mapping with nested disable_objects as true Signed-off-by: Mohit Kumar <mohitamg@amazon.com> * Addressed review comments and removed redundant code Signed-off-by: Mohit Kumar <mohitamg@amazon.com> --------- Signed-off-by: Mohit Kumar <mohitamg@amazon.com> Signed-off-by: mohit10011999 <pinkijyoti1995@gmail.com> Signed-off-by: Karen X <karenxyr@gmail.com> Signed-off-by: Swetha Guptha <gupthasg@amazon.com> Co-authored-by: Mohit Kumar <mohitamg@amazon.com> Co-authored-by: Karen X <karenxyr@gmail.com> Co-authored-by: karenx <karenx@uber.com> Co-authored-by: Swetha Guptha <gupthasg@amazon.com>
Description
Currently,
k-nnextendstransport-grpc, andneural-searchextendsknn, but whenneural-searchtries to extendtransport-grpc(which is already inknn) it gives jar hell when trying to buildTest Plan
Tested with opensearch-project/neural-search#1665
Newly emitted log shows the the intersection of all shared ancestor dependencies between opensearch-knn and transport-grpc:
Hybrid queries are successfully discovered via transport-grpc-spi
Hybrid queries are successfully registered with transport-grpc:
Related Issues
Resolves #20100
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.
Summary by CodeRabbit
Bug Fixes
Tests
✏️ Tip: You can customize this high-level summary in your review settings.