From 6c69d22707cdc48b8e1e21bc084dd28be2789626 Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Wed, 7 Oct 2026 10:52:56 +0530 Subject: [PATCH 1/8] cl --- changelog/unreleased/SOLR-18520-uninstall-bug.yml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 changelog/unreleased/SOLR-18520-uninstall-bug.yml diff --git a/changelog/unreleased/SOLR-18520-uninstall-bug.yml b/changelog/unreleased/SOLR-18520-uninstall-bug.yml new file mode 100644 index 00000000000..652a172f487 --- /dev/null +++ b/changelog/unreleased/SOLR-18520-uninstall-bug.yml @@ -0,0 +1,9 @@ +title: > + Package Uninstall works in absence of clusterprops.json file +type: fixed +authors: + - name: Jalaz Kumar + nick: jaykay12 +links: + - name: SOLR-18520 + url: https://issues.apache.org/jira/browse/SOLR-18520 From cdf95df3b327fc8d170ea65d156e22536db4dc00 Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Wed, 7 Oct 2026 11:22:03 +0530 Subject: [PATCH 2/8] changes --- .../solr/packagemanager/PackageManager.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java index b8c38274f8d..0807e60cfed 100644 --- a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java +++ b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java @@ -42,6 +42,7 @@ import org.apache.solr.cli.SolrCLI; import org.apache.solr.cli.ToolRuntime; import org.apache.solr.client.api.util.SolrVersion; +import org.apache.solr.client.solrj.RemoteSolrException; import org.apache.solr.client.solrj.SolrClient; import org.apache.solr.client.solrj.SolrRequest; import org.apache.solr.client.solrj.SolrServerException; @@ -154,7 +155,7 @@ public void uninstall(String packageName, String version) del.pkg = packageName; V2Request req = - new V2Request.Builder(PackageUtils.PACKAGE_PATH) + new V2Request.Builder("/cluster/package") .forceV2(true) .withMethod(SolrRequest.METHOD.POST) .withPayload(Map.of("delete", del)) @@ -278,19 +279,22 @@ public Map getPackagesDeployedAsClusterLevelPlugins Map packageVersions = new HashMap<>(); // map of package name to multiple values of pluginMeta(Map) Map> packagePlugins = new HashMap<>(); - Object pluginsValue; + Object pluginsValue = null; try { NamedList response = solrClient.request( new GenericV2SolrRequest(SolrRequest.METHOD.GET, PackageUtils.CLUSTERPROPS_PATH)); Integer statusCode = (Integer) response._get(List.of("responseHeader", "status"), null); - if (statusCode == null || statusCode == ErrorCode.NOT_FOUND.code) { - // Cluster props doesn't exist, that means there are no cluster level plugins installed. - pluginsValue = null; - } else { + if (statusCode != null || statusCode != ErrorCode.NOT_FOUND.code) { + // Cluster props exists, that means there are cluster level plugins installed. pluginsValue = response.get(ContainerPluginsApi.PLUGIN); } - } catch (SolrServerException | IOException ex) { + } catch (RemoteSolrException ex) { + if (log.isDebugEnabled()) { + log.debug("Unable to fetch clusterprops for package plugins", ex); + } + } + catch (SolrServerException | IOException ex) { throw new SolrException(ErrorCode.SERVER_ERROR, ex); } @SuppressWarnings({"unchecked"}) From 272375f0083ad0306ec88822528866e1c204cfe5 Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Wed, 7 Oct 2026 11:27:31 +0530 Subject: [PATCH 3/8] cl --- changelog/unreleased/SOLR-18520-uninstall-bug.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/changelog/unreleased/SOLR-18520-uninstall-bug.yml b/changelog/unreleased/SOLR-18520-uninstall-bug.yml index 652a172f487..33cfe324a36 100644 --- a/changelog/unreleased/SOLR-18520-uninstall-bug.yml +++ b/changelog/unreleased/SOLR-18520-uninstall-bug.yml @@ -1,5 +1,5 @@ -title: > - Package Uninstall works in absence of clusterprops.json file +title: + Package Uninstall should work in absence of clusterprops.json file- #5052 type: fixed authors: - name: Jalaz Kumar From 5e6988f8f82f4978b089a764b62fb66df5fb3511 Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Wed, 7 Oct 2026 11:37:07 +0530 Subject: [PATCH 4/8] bug fix --- .../src/java/org/apache/solr/packagemanager/PackageManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java index 0807e60cfed..f4e7f555713 100644 --- a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java +++ b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java @@ -285,7 +285,7 @@ public Map getPackagesDeployedAsClusterLevelPlugins solrClient.request( new GenericV2SolrRequest(SolrRequest.METHOD.GET, PackageUtils.CLUSTERPROPS_PATH)); Integer statusCode = (Integer) response._get(List.of("responseHeader", "status"), null); - if (statusCode != null || statusCode != ErrorCode.NOT_FOUND.code) { + if (statusCode != null && statusCode != ErrorCode.NOT_FOUND.code) { // Cluster props exists, that means there are cluster level plugins installed. pluginsValue = response.get(ContainerPluginsApi.PLUGIN); } From 3e99e4b469910af33262796365e7cb8ee2f36e39 Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Wed, 7 Oct 2026 11:38:55 +0530 Subject: [PATCH 5/8] tidy --- .../java/org/apache/solr/packagemanager/PackageManager.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java index f4e7f555713..a15955be8fa 100644 --- a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java +++ b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java @@ -293,8 +293,7 @@ public Map getPackagesDeployedAsClusterLevelPlugins if (log.isDebugEnabled()) { log.debug("Unable to fetch clusterprops for package plugins", ex); } - } - catch (SolrServerException | IOException ex) { + } catch (SolrServerException | IOException ex) { throw new SolrException(ErrorCode.SERVER_ERROR, ex); } @SuppressWarnings({"unchecked"}) From 152f316a89f162c258c6cfee54c11a096f559124 Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Thu, 8 Oct 2026 07:08:01 +0530 Subject: [PATCH 6/8] pr comment --- .../src/java/org/apache/solr/packagemanager/PackageManager.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java index a15955be8fa..c192253ef8b 100644 --- a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java +++ b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java @@ -290,9 +290,7 @@ public Map getPackagesDeployedAsClusterLevelPlugins pluginsValue = response.get(ContainerPluginsApi.PLUGIN); } } catch (RemoteSolrException ex) { - if (log.isDebugEnabled()) { log.debug("Unable to fetch clusterprops for package plugins", ex); - } } catch (SolrServerException | IOException ex) { throw new SolrException(ErrorCode.SERVER_ERROR, ex); } From 614696dde24fc08724377f45dfa6ad0b8d6a48ab Mon Sep 17 00:00:00 2001 From: jaykay12 Date: Thu, 8 Oct 2026 07:12:36 +0530 Subject: [PATCH 7/8] tidy --- .../src/java/org/apache/solr/packagemanager/PackageManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java index c192253ef8b..e344f8ec35d 100644 --- a/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java +++ b/solr/core/src/java/org/apache/solr/packagemanager/PackageManager.java @@ -290,7 +290,7 @@ public Map getPackagesDeployedAsClusterLevelPlugins pluginsValue = response.get(ContainerPluginsApi.PLUGIN); } } catch (RemoteSolrException ex) { - log.debug("Unable to fetch clusterprops for package plugins", ex); + log.debug("Unable to fetch clusterprops for package plugins", ex); } catch (SolrServerException | IOException ex) { throw new SolrException(ErrorCode.SERVER_ERROR, ex); } From db1dfd991a2d7a3be2efd8f34274c3df9bdfc4b6 Mon Sep 17 00:00:00 2001 From: David Smiley Date: Thu, 8 Oct 2026 11:30:26 -0400 Subject: [PATCH 8/8] tweak title --- changelog/unreleased/SOLR-18520-uninstall-bug.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog/unreleased/SOLR-18520-uninstall-bug.yml b/changelog/unreleased/SOLR-18520-uninstall-bug.yml index 33cfe324a36..6e66dcb25cb 100644 --- a/changelog/unreleased/SOLR-18520-uninstall-bug.yml +++ b/changelog/unreleased/SOLR-18520-uninstall-bug.yml @@ -1,5 +1,5 @@ title: - Package Uninstall should work in absence of clusterprops.json file- #5052 + Package Uninstall should work in absence of clusterprops.json file type: fixed authors: - name: Jalaz Kumar