You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by sf...@apache.org on 2014/12/10 20:00:58 UTC
incubator-usergrid git commit: add more index protections when
creating alias
Repository: incubator-usergrid
Updated Branches:
refs/heads/USERGRID-274 [created] fe4b193df
add more index protections when creating alias
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/fe4b193d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/fe4b193d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/fe4b193d
Branch: refs/heads/USERGRID-274
Commit: fe4b193df87ecbc8092707fe3be57568a8ea2f85
Parents: 43ed846
Author: Shawn Feldman <sf...@apache.org>
Authored: Wed Dec 10 11:49:28 2014 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Wed Dec 10 11:49:28 2014 -0700
----------------------------------------------------------------------
.../index/impl/EsEntityIndexImpl.java | 33 +++++++++++++-------
1 file changed, 21 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/fe4b193d/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexImpl.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexImpl.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexImpl.java
index 67e1680..208a811 100644
--- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexImpl.java
+++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexImpl.java
@@ -26,6 +26,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
import org.apache.usergrid.persistence.index.*;
import org.apache.usergrid.persistence.index.utils.StringUtils;
+import org.elasticsearch.ElasticsearchException;
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
import org.elasticsearch.action.admin.cluster.tasks.PendingClusterTasksRequest;
@@ -181,33 +182,41 @@ public class EsEntityIndexImpl implements AliasedEntityIndex {
@Override
public void addAlias(final String indexSuffix) {
- try {
- Boolean isAck;
- String indexName = indexIdentifier.getIndex(indexSuffix);
- final AdminClient adminClient = esProvider.getClient().admin();
+ Boolean isAck;
+ String indexName = indexIdentifier.getIndex(indexSuffix);
+ final AdminClient adminClient = esProvider.getClient().admin();
+
+ String[] indexNames = getIndexes(AliasType.Write);
- String[] indexNames = getIndexes(AliasType.Write);
+ for (String currentIndex : indexNames) {
+ try {
- for(String currentIndex : indexNames){
isAck = adminClient.indices().prepareAliases().removeAlias(currentIndex,
alias.getWriteAlias()).execute().actionGet().isAcknowledged();
+ logger.info("Removed Index Name [{}] from Alias=[{}] ACK=[{}]", currentIndex, alias, isAck);
- logger.info("Removed Index Name [{}] from Alias=[{}] ACK=[{}]",currentIndex, alias, isAck);
+ } catch (ElasticsearchException e) {
+ logger.warn("Failed to remove index from alias {}", alias.getWriteAlias(), e);
}
-
+ }
+ try {
//add read alias
isAck = adminClient.indices().prepareAliases().addAlias(
indexName, alias.getReadAlias()).execute().actionGet().isAcknowledged();
logger.info("Created new read Alias Name [{}] ACK=[{}]", alias, isAck);
-
+ } catch (ElasticsearchException e) {
+ logger.warn("Failed to add read alias {}", alias.getReadAlias(), e);
+ }
+ try {
//add write alias
isAck = adminClient.indices().prepareAliases().addAlias(
indexName, alias.getWriteAlias()).execute().actionGet().isAcknowledged();
logger.info("Created new write Alias Name [{}] ACK=[{}]", alias, isAck);
- aliasCache.invalidate(alias);
- } catch (Exception e) {
- logger.warn("Failed to create alias ", e);
+ } catch (ElasticsearchException e) {
+ logger.warn("Failed to add write alias {}", alias.getWriteAlias(), e);
}
+ aliasCache.invalidate(alias);
+
}
@Override