You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ja...@apache.org on 2021/10/12 22:10:24 UTC
[lucene-solr] branch branch_8x updated: SOLR-15691: Admin UI raises
yellow warning even when only case differ (#2590)
This is an automated email from the ASF dual-hosted git repository.
janhoy pushed a commit to branch branch_8x
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
The following commit(s) were added to refs/heads/branch_8x by this push:
new 107121f SOLR-15691: Admin UI raises yellow warning even when only case differ (#2590)
107121f is described below
commit 107121f0e604e3205cb47c6c3f9d562e92c9385e
Author: Jan Høydahl <ja...@users.noreply.github.com>
AuthorDate: Wed Oct 13 00:10:06 2021 +0200
SOLR-15691: Admin UI raises yellow warning even when only case differ (#2590)
Back-ported from apache/solr main.
---
solr/CHANGES.txt | 1 +
.../java/org/apache/solr/handler/admin/ZookeeperStatusHandler.java | 4 ++--
.../org/apache/solr/handler/admin/ZookeeperStatusHandlerTest.java | 4 ++--
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 631bf2c..4cbf286 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -24,6 +24,7 @@ Bug Fixes
---------------------
* SOLR-15626: The "config-read" permission has been fixed to properly allow access to `/solr/admin/configs?action=LIST` (Jon Senchyna via Eric Pugh)
+* SOLR-15691: Admin UI raises yellow warning even when only case of hostnames differ (janhoy)
Build
---------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/admin/ZookeeperStatusHandler.java b/solr/core/src/java/org/apache/solr/handler/admin/ZookeeperStatusHandler.java
index a4e0683..f75eee7 100644
--- a/solr/core/src/java/org/apache/solr/handler/admin/ZookeeperStatusHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/admin/ZookeeperStatusHandler.java
@@ -120,10 +120,10 @@ public class ZookeeperStatusHandler extends RequestHandlerBase {
} else {
dynamicReconfig = true;
List<String> connStringHosts = hostsFromConnectionString.getServers().stream()
- .map(h -> h.resolveClientPortAddress() + ":" + h.clientPort)
+ .map(h -> h.resolveClientPortAddress().toLowerCase(Locale.ROOT) + ":" + h.clientPort)
.sorted().collect(Collectors.toList());
List<String> dynamicHosts = zkDynamicConfig.getServers().stream()
- .map(h -> h.resolveClientPortAddress() + ":" +
+ .map(h -> h.resolveClientPortAddress().toLowerCase(Locale.ROOT) + ":" +
(h.clientPort != null ? h.clientPort : hostsFromConnectionString.getServers().get(0).clientPort))
.sorted().collect(Collectors.toList());
if (!connStringHosts.containsAll(dynamicHosts)) {
diff --git a/solr/core/src/test/org/apache/solr/handler/admin/ZookeeperStatusHandlerTest.java b/solr/core/src/test/org/apache/solr/handler/admin/ZookeeperStatusHandlerTest.java
index b14c0c4..f9efc39 100644
--- a/solr/core/src/test/org/apache/solr/handler/admin/ZookeeperStatusHandlerTest.java
+++ b/solr/core/src/test/org/apache/solr/handler/admin/ZookeeperStatusHandlerTest.java
@@ -239,7 +239,7 @@ public class ZookeeperStatusHandlerTest extends SolrCloudTestCase {
when(zkStatusHandler.validateZkRawResponse(ArgumentMatchers.any(), any(), any())).thenAnswer(Answers.CALLS_REAL_METHODS);
// Verifying that parsing the status strings with floating point no longer triggers a NumberFormatException, although floats are still displayed in UI
- Map<String, Object> mockStatus = zkStatusHandler.getZkStatus("zoo1:2181", ZkDynamicConfig.fromZkConnectString("zoo1:2181"));
+ Map<String, Object> mockStatus = zkStatusHandler.getZkStatus("Zoo1:2181", ZkDynamicConfig.fromZkConnectString("zoo1:2181"));
String expected = "{\n" +
" \"mode\":\"ensemble\",\n" +
" \"dynamicReconfig\":true,\n" +
@@ -252,7 +252,7 @@ public class ZookeeperStatusHandlerTest extends SolrCloudTestCase {
" \"clientPort\":\"2181\",\n" +
" \"ok\":true,\n" +
" \"zk_server_state\":\"leader\"}],\n" +
- " \"zkHost\":\"zoo1:2181\",\n" +
+ " \"zkHost\":\"Zoo1:2181\",\n" +
" \"status\":\"green\"}";
assertEquals(expected, JSONUtil.toJSON(mockStatus));
}