diff --git a/changelog/unreleased/SOLR-18103.yml b/changelog/unreleased/SOLR-18103.yml new file mode 100644 index 00000000000..2e057434a8f --- /dev/null +++ b/changelog/unreleased/SOLR-18103.yml @@ -0,0 +1,8 @@ +# See https://github.com/apache/solr/blob/main/dev-docs/changelog.adoc +title: Remove deprecated hiddenSysProps setting under "metrics" in solr.xml. It remains a standard top level config setting. +type: removed # added, changed, fixed, deprecated, removed, dependency_update, security, other +authors: + - name: Eric Pugh +links: + - name: SOLR-18103 + url: https://issues.apache.org/jira/browse/SOLR-18103 diff --git a/solr/core/src/java/org/apache/solr/core/SolrXmlConfig.java b/solr/core/src/java/org/apache/solr/core/SolrXmlConfig.java index 459b58f13c5..f58286f172f 100644 --- a/solr/core/src/java/org/apache/solr/core/SolrXmlConfig.java +++ b/solr/core/src/java/org/apache/solr/core/SolrXmlConfig.java @@ -165,10 +165,6 @@ public static NodeConfig fromConfig( configBuilder.setBackupRepositoryPlugins( getBackupRepositoryPluginInfos(root.get("backup").getAll("repository"))); configBuilder.setClusterPlugins(getClusterPlugins(loader, root)); - // will be removed in Solr 10, but until then, use it if a - // is not provided under . - // Remove this line in 10.0 - configBuilder.setHiddenSysProps(getHiddenSysProps(root.get("metrics"))); configBuilder.setMetricsConfig(getMetricsConfig(root.get("metrics"))); configBuilder.setCachesConfig(getCachesConfig(loader, root.get("caches"))); configBuilder.setDefaultZkHost(defaultZkHost); @@ -747,26 +743,6 @@ private static Object decodeNullValue(Object o) { return o; } - /** - * Deprecated as of 9.3, will be removed in 10.0 - * - * @param metrics configNode for the metrics - * @return a comma-separated list of hidden Sys Props - */ - @Deprecated(forRemoval = true, since = "9.3") - private static String getHiddenSysProps(ConfigNode metrics) { - ConfigNode p = metrics.get("hiddenSysProps"); - if (!p.exists()) return null; - Set props = new HashSet<>(); - p.forEachChild( - it -> { - if (it.name().equals("str") && StrUtils.isNotNullOrEmpty(it.txt())) - props.add(Pattern.quote(it.txt())); - return Boolean.TRUE; - }); - return String.join(",", props); - } - private static PluginInfo getPluginInfo(ConfigNode cfg) { if (cfg == null || !cfg.exists()) return null; final var pluginInfo = new PluginInfo(cfg, cfg.name(), false, true);