From ec5419048e941ccc5acf417122760cb0dd31e41d Mon Sep 17 00:00:00 2001 From: Areek Zillur Date: Mon, 21 Mar 2016 18:29:38 -0400 Subject: [PATCH] cleanup writing upgraded index state In #17187, we upgrade index state after upgrading index folder structure. As we don't have to write the upgraded state in the old index folder structure, we can cleanup how we write upgraded index state. --- .../org/elasticsearch/gateway/GatewayMetaState.java | 4 ++-- .../org/elasticsearch/gateway/MetaStateService.java | 11 ++--------- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/core/src/main/java/org/elasticsearch/gateway/GatewayMetaState.java b/core/src/main/java/org/elasticsearch/gateway/GatewayMetaState.java index 1da82468997ae..867b7420107e6 100644 --- a/core/src/main/java/org/elasticsearch/gateway/GatewayMetaState.java +++ b/core/src/main/java/org/elasticsearch/gateway/GatewayMetaState.java @@ -234,8 +234,8 @@ private void upgradeMetaData() throws Exception { // We successfully checked all indices for backward compatibility and found no non-upgradable indices, which // means the upgrade can continue. Now it's safe to overwrite index metadata with the new version. for (IndexMetaData indexMetaData : updateIndexMetaData) { - // since we still haven't upgraded the index folders, we write index state in the old folder - metaStateService.writeIndex("upgrade", indexMetaData, nodeEnv.resolveIndexFolder(indexMetaData.getIndex().getUUID())); + // since we upgraded the index folders already, write index state in the upgraded index folder + metaStateService.writeIndex("upgrade", indexMetaData); } } diff --git a/core/src/main/java/org/elasticsearch/gateway/MetaStateService.java b/core/src/main/java/org/elasticsearch/gateway/MetaStateService.java index 0edfb5631741c..89192c47d0962 100644 --- a/core/src/main/java/org/elasticsearch/gateway/MetaStateService.java +++ b/core/src/main/java/org/elasticsearch/gateway/MetaStateService.java @@ -121,18 +121,11 @@ MetaData loadGlobalState() throws IOException { * Writes the index state. */ void writeIndex(String reason, IndexMetaData indexMetaData) throws IOException { - writeIndex(reason, indexMetaData, nodeEnv.indexPaths(indexMetaData.getIndex())); - } - - /** - * Writes the index state in locations, use {@link #writeGlobalState(String, MetaData)} - * to write index state in index paths - */ - void writeIndex(String reason, IndexMetaData indexMetaData, Path[] locations) throws IOException { final Index index = indexMetaData.getIndex(); logger.trace("[{}] writing state, reason [{}]", index, reason); try { - IndexMetaData.FORMAT.write(indexMetaData, indexMetaData.getVersion(), locations); + IndexMetaData.FORMAT.write(indexMetaData, indexMetaData.getVersion(), + nodeEnv.indexPaths(indexMetaData.getIndex())); } catch (Throwable ex) { logger.warn("[{}]: failed to write index state", ex, index); throw new IOException("failed to write state for [" + index + "]", ex);