diff options
author | Sébastien Lesaint <sebastien.lesaint@sonarsource.com> | 2017-09-04 16:26:08 +0200 |
---|---|---|
committer | Sébastien Lesaint <sebastien.lesaint@sonarsource.com> | 2017-09-13 15:50:53 +0200 |
commit | fc4fcf2ceb0572e3b5b2862563285daf65ff0b97 (patch) | |
tree | 2029776917c25ee2cd172e1b44f5603eb8cababb /server | |
parent | ab4df33ba7329d177005c627ed245950dfff2068 (diff) | |
download | sonarqube-fc4fcf2ceb0572e3b5b2862563285daf65ff0b97.tar.gz sonarqube-fc4fcf2ceb0572e3b5b2862563285daf65ff0b97.zip |
SONAR-9741 don't check ES status when computing node health status
Diffstat (limited to 'server')
2 files changed, 21 insertions, 5 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/ws/HealthActionModule.java b/server/sonar-server/src/main/java/org/sonar/server/platform/ws/HealthActionModule.java index 05cf290cedc..2b8a0d4708c 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/ws/HealthActionModule.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/ws/HealthActionModule.java @@ -42,9 +42,10 @@ public class HealthActionModule extends Module { // NodeHealthCheck implementations add(WebServerStatusNodeCheck.class, DbConnectionNodeCheck.class, - EsStatusNodeCheck.class, CeStatusNodeCheck.class); - if (!webServer.isStandalone()) { + if (webServer.isStandalone()) { + add(EsStatusNodeCheck.class); + } else { // ClusterHealthCheck implementations add(EsStatusClusterCheck.class, AppNodeClusterCheck.class, diff --git a/server/sonar-server/src/test/java/org/sonar/server/platform/ws/HealthActionModuleTest.java b/server/sonar-server/src/test/java/org/sonar/server/platform/ws/HealthActionModuleTest.java index 07d1a027699..1f9e1479c41 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/platform/ws/HealthActionModuleTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/platform/ws/HealthActionModuleTest.java @@ -63,9 +63,8 @@ public class HealthActionModuleTest { } @Test - public void verify_installed_NodeHealthChecks_implementations() { - boolean standalone = new Random().nextBoolean(); - when(webServer.isStandalone()).thenReturn(standalone); + public void verify_installed_NodeHealthChecks_implementations_when_standalone() { + when(webServer.isStandalone()).thenReturn(true); ComponentContainer container = new ComponentContainer(); underTest.configure(container); @@ -80,6 +79,22 @@ public class HealthActionModuleTest { } @Test + public void verify_installed_NodeHealthChecks_implementations_when_clustered() { + when(webServer.isStandalone()).thenReturn(false); + ComponentContainer container = new ComponentContainer(); + + underTest.configure(container); + + List<Class<?>> checks = classesAddedToContainer(container).stream().filter(NodeHealthCheck.class::isAssignableFrom).collect(Collectors.toList()); + assertThat(checks) + .hasSize(3) + .contains(WebServerStatusNodeCheck.class) + .contains(DbConnectionNodeCheck.class) + .contains(CeStatusNodeCheck.class) + .doesNotContain(EsStatusNodeCheck.class); + } + + @Test public void verify_installed_ClusterHealthChecks_implementations_in_standalone() { when(webServer.isStandalone()).thenReturn(true); ComponentContainer container = new ComponentContainer(); |