This is an automated email from the ASF dual-hosted git repository.
epugh pushed a commit to branch branch_9x
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/branch_9x by this push:
new 5ea995906f8 SOLR-17213: Make warning optional so we can warn only when
solrUrl is user entered (#2377)
5ea995906f8 is described below
commit 5ea995906f8491dd5418e18f51c62e9ef168e443
Author: Eric Pugh <[email protected]>
AuthorDate: Wed Apr 10 10:42:11 2024 -0400
SOLR-17213: Make warning optional so we can warn only when solrUrl is user
entered (#2377)
Prevent spurious warnings to the console for Solr URL's that are NOT
entered by the user, but instead are looked up by the CLI from Solr itself.
---
solr/CHANGES.txt | 2 ++
.../core/src/java/org/apache/solr/cli/SolrCLI.java | 27 +++++++++++++++++-----
2 files changed, 23 insertions(+), 6 deletions(-)
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index a9c5766322e..84b0ee0ab3d 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -88,6 +88,8 @@ Bug Fixes
* SOLR-17206: Eliminate the possibility of a -1 status code for SolrCloud
update requests that are distributed.
(Paul McArthur)
+* SOLR-17213: Fix spurious warnings about solr url format in Solr CLI when
users aren't providing a deprecated solr url. (Eric Pugh)
+
Dependency Upgrades
---------------------
diff --git a/solr/core/src/java/org/apache/solr/cli/SolrCLI.java
b/solr/core/src/java/org/apache/solr/cli/SolrCLI.java
index 23b60ff6725..a29c636aca9 100755
--- a/solr/core/src/java/org/apache/solr/cli/SolrCLI.java
+++ b/solr/core/src/java/org/apache/solr/cli/SolrCLI.java
@@ -527,15 +527,29 @@ public class SolrCLI implements CLIO {
* @return the solrUrl in the format that Solr expects to see internally.
*/
public static String normalizeSolrUrl(String solrUrl) {
+ return normalizeSolrUrl(solrUrl, true);
+ }
+
+ /**
+ * Strips off the end of solrUrl any /solr when a legacy solrUrl like
http://localhost:8983/solr
+ * is used, and optionally logs a warning. In the future we'll have urls
ending with /api as well.
+ *
+ * @param solrUrl The user supplied url to Solr.
+ * @param logUrlFormatWarning If a warning message should be logged about
the url format
+ * @return the solrUrl in the format that Solr expects to see internally.
+ */
+ public static String normalizeSolrUrl(String solrUrl, boolean
logUrlFormatWarning) {
if (solrUrl != null) {
if (solrUrl.contains("/solr")) { //
String newSolrUrl = solrUrl.substring(0, solrUrl.indexOf("/solr"));
- CLIO.out(
- "WARNING: URLs provided to this tool needn't include Solr's
context-root (e.g. \"/solr\"). Such URLs are deprecated and support for them
will be removed in a future release. Correcting from ["
- + solrUrl
- + "] to ["
- + newSolrUrl
- + "].");
+ if (logUrlFormatWarning) {
+ CLIO.out(
+ "WARNING: URLs provided to this tool needn't include Solr's
context-root (e.g. \"/solr\"). Such URLs are deprecated and support for them
will be removed in a future release. Correcting from ["
+ + solrUrl
+ + "] to ["
+ + newSolrUrl
+ + "].");
+ }
solrUrl = newSolrUrl;
}
if (solrUrl.endsWith("/")) {
@@ -572,6 +586,7 @@ public class SolrCLI implements CLIO {
String firstLiveNode = liveNodes.iterator().next();
solrUrl =
ZkStateReader.from(cloudSolrClient).getBaseUrlForNodeName(firstLiveNode);
+ solrUrl = normalizeSolrUrl(solrUrl, false);
}
}
}