From ea9258c5f831b549a152b608e3cb1afc6afa7af3 Mon Sep 17 00:00:00 2001 From: Eric Hartmann Date: Thu, 18 May 2017 17:28:35 +0200 Subject: [PATCH] SONAR-9286 Fix ES error at startup --- .../main/java/org/sonar/server/es/IndexerStartupTask.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/server/sonar-server/src/main/java/org/sonar/server/es/IndexerStartupTask.java b/server/sonar-server/src/main/java/org/sonar/server/es/IndexerStartupTask.java index fa0e069319f..07ae9a9914b 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/es/IndexerStartupTask.java +++ b/server/sonar-server/src/main/java/org/sonar/server/es/IndexerStartupTask.java @@ -88,6 +88,7 @@ public class IndexerStartupTask { private void setInitialized(IndexType indexType) { String index = indexType.getIndex(); + waitForIndexGreen(index); closeIndex(index); setIndexSetting(index, getInitializedSettingName(indexType), true); openIndex(index); @@ -115,6 +116,11 @@ public class IndexerStartupTask { ClusterHealthAction.INSTANCE.newRequestBuilder(nativeClient).setIndices(index).setWaitForYellowStatus().get(TimeValue.timeValueMinutes(10)); } + private void waitForIndexGreen(String index) { + Client nativeClient = esClient.nativeClient(); + ClusterHealthAction.INSTANCE.newRequestBuilder(nativeClient).setIndices(index).setWaitForGreenStatus().get(TimeValue.timeValueMinutes(10)); + } + private static String getInitializedSettingName(IndexType indexType) { return "index." + SETTING_PREFIX_INITIAL_INDEXING_FINISHED + indexType.getType(); } -- 2.39.5