From 9ae998347aa4cd3d4a074f954a30eba9fa7d721a Mon Sep 17 00:00:00 2001 From: Ashish Agrawal Date: Tue, 19 May 2026 17:14:31 -0700 Subject: [PATCH 1/2] Pin analytics-api dep to 3.7.0-SNAPSHOT for release builds MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The distribution build (./build.sh -s false) sets -Dopensearch.version=3.7.0, which made the dep declared as ${opensearch_version} resolve to "3.7.0" — a release coordinate that will never exist for org.opensearch.sandbox:analytics-api. OpenSearch core's sandbox/build.gradle deliberately disables publish tasks for sandbox artifacts unless -Dsandbox.enabled=true AND build.snapshot=true, explicitly to "prevent accidental inclusion of these artifacts in a release distribution". Build 11942 fails at :opensearch-sql-plugin:compileJava with `Could not find org.opensearch.sandbox:analytics-api:3.7.0`. Hardcode the dep version to "3.7.0-SNAPSHOT" — same pattern already used by core/build.gradle:67 for the same artifact. The bundled jar continues to ship inside the SQL plugin so QueryPlanExecutor remains resolvable at runtime even when the analytics-engine plugin is absent (verified by loading the rebuilt plugin into a 3.7.0 cluster — all 11 plugins load cleanly, cluster transitions to GREEN). Resolves #5434 Signed-off-by: Ashish Agrawal --- plugin/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin/build.gradle b/plugin/build.gradle index 708c4b18b3..536da696cc 100644 --- a/plugin/build.gradle +++ b/plugin/build.gradle @@ -160,7 +160,7 @@ dependencies { api project(":ppl") api project(':api') - implementation("org.opensearch.sandbox:analytics-api:${opensearch_version}") + implementation 'org.opensearch.sandbox:analytics-api:3.7.0-SNAPSHOT' api project(':legacy') api project(':opensearch') api project(':prometheus') From 8b62fc2208b042bf746f1ded1b9659dbd2b0ce3a Mon Sep 17 00:00:00 2001 From: Ashish Agrawal Date: Tue, 19 May 2026 21:43:52 -0700 Subject: [PATCH 2/2] Use opensearch_version-derived snapshot coord for analytics-api Address review feedback: instead of hardcoding "3.7.0-SNAPSHOT", derive the snapshot version from ${opensearch_version} via the same tokenize pattern build.gradle:12 already uses for opensearch_build. The dep now auto-tracks version bumps and resolves correctly in both release-mode CI (${opensearch_version}=3.7.0) and local snapshot builds (${opensearch_version}=3.7.0-SNAPSHOT) without producing a malformed "-SNAPSHOT-SNAPSHOT" suffix. Signed-off-by: Ashish Agrawal --- plugin/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin/build.gradle b/plugin/build.gradle index 536da696cc..b26c5e7c85 100644 --- a/plugin/build.gradle +++ b/plugin/build.gradle @@ -160,7 +160,7 @@ dependencies { api project(":ppl") api project(':api') - implementation 'org.opensearch.sandbox:analytics-api:3.7.0-SNAPSHOT' + implementation "org.opensearch.sandbox:analytics-api:${opensearch_version.tokenize('-')[0]}-SNAPSHOT" api project(':legacy') api project(':opensearch') api project(':prometheus')