You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by to...@apache.org on 2014/12/03 23:29:09 UTC
[02/22] incubator-usergrid git commit: add alias support
add alias support
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/55110a5d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/55110a5d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/55110a5d
Branch: refs/heads/two-dot-o
Commit: 55110a5d87f33d7e7a1bc7c0752b3a7b4baacf17
Parents: 7b08ea5
Author: Shawn Feldman <sf...@apache.org>
Authored: Fri Nov 21 13:57:11 2014 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Fri Nov 21 13:57:11 2014 -0700
----------------------------------------------------------------------
.../index/impl/EsEntityIndexBatchImpl.java | 2 +-
.../index/impl/EsEntityIndexImpl.java | 4 +-
.../persistence/index/impl/IndexingUtils.java | 65 +++++++++++---------
3 files changed, 38 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/55110a5d/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexBatchImpl.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexBatchImpl.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexBatchImpl.java
index 9f50ccd..3fb3340 100644
--- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexBatchImpl.java
+++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsEntityIndexBatchImpl.java
@@ -98,7 +98,7 @@ public class EsEntityIndexBatchImpl implements EntityIndexBatch {
this.applicationScope = applicationScope;
this.client = client;
this.failureMonitor = failureMonitor;
- this.aliasName = IndexingUtils.createAliasName(createIndexName( config.getIndexPrefix(), applicationScope ),config);
+ this.aliasName = IndexingUtils.createAliasName( config, applicationScope );
this.refresh = config.isForcedRefresh();
this.autoFlushSize = autoFlushSize;
initBatch();
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/55110a5d/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 7407e49..8555b1c 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
@@ -137,7 +137,7 @@ public class EsEntityIndexImpl implements EntityIndex {
this.esProvider = provider;
this.config = config;
this.cursorTimeout = config.getQueryCursorTimeout();
- this.aliasName = IndexingUtils.createAliasName(IndexingUtils.createIndexName(config.getIndexPrefix(), appScope),config);
+ this.aliasName = IndexingUtils.createAliasName(config,appScope);
this.failureMonitor = new FailureMonitorImpl( config, provider );
}
@@ -178,7 +178,7 @@ public class EsEntityIndexImpl implements EntityIndex {
private void createIndexAndAlias(AdminClient admin, Settings settings) {
String indexName = IndexingUtils.createIndexName(config.getIndexPrefix(), applicationScope);
- String indexVersionName = IndexingUtils.getIndexName(indexName, 0);
+ String indexVersionName = IndexingUtils.createIndexName(indexName, 0);
final CreateIndexResponse cir = admin.indices().prepareCreate( indexVersionName ).setSettings( settings ).execute().actionGet();
//check if alias exists and get the alias
admin.indices().prepareAliases().addAlias(indexVersionName,aliasName).execute().actionGet();
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/55110a5d/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
index dcd496b..3aa4f39 100644
--- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
+++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
@@ -98,15 +98,25 @@ public class IndexingUtils {
* @param applicationScope
* @return
*/
- public static String createIndexName(
- String prefix, ApplicationScope applicationScope) {
+ public static String createIndexBaseName(String prefix, ApplicationScope applicationScope) {
StringBuilder sb = new StringBuilder();
sb.append( prefix ).append( SEPARATOR );
idString( sb, applicationScope.getApplication() );
return sb.toString();
}
+ public static String createIndexName(String indexName, int i) {
+ if(i>0) {
+ return indexName + "_v" + (i + 1);
+ }else{
+ return indexName;
+ }
+ }
+ public static String createAliasName( IndexFig config,ApplicationScope applicationScope) {
+ String indexName =IndexingUtils.createIndexBaseName(config.getIndexPrefix(), applicationScope);
+ return indexName + config.getAliasPostfix();
+ }
/**
* Create the index doc from the given entity
@@ -155,54 +165,54 @@ public class IndexingUtils {
.startObject( type )
- .startArray( "dynamic_templates" )
+ .startArray("dynamic_templates")
//we need most specific mappings first since it's a stop on match algorithm
.startObject()
- .startObject( "context_template" )
- .field( "match", IndexingUtils.ENTITYID_ID_FIELDNAME )
- .field( "match_mapping_type", "string" )
- .startObject( "mapping" ).field( "type", "string" )
- .field( "index", "not_analyzed" )
+ .startObject("context_template")
+ .field("match", IndexingUtils.ENTITYID_ID_FIELDNAME)
+ .field("match_mapping_type", "string")
+ .startObject("mapping").field( "type", "string" )
+ .field("index", "not_analyzed")
.endObject()
.endObject()
.endObject()
.startObject()
- .startObject( "context_template" )
- .field( "match", IndexingUtils.ENTITY_CONTEXT_FIELDNAME )
- .field( "match_mapping_type", "string" )
- .startObject( "mapping" ).field( "type", "string" )
- .field( "index", "not_analyzed" ).endObject()
+ .startObject("context_template")
+ .field("match", IndexingUtils.ENTITY_CONTEXT_FIELDNAME)
+ .field("match_mapping_type", "string")
+ .startObject("mapping").field( "type", "string" )
+ .field("index", "not_analyzed").endObject()
.endObject()
.endObject()
// any string with field name that starts with sa_ gets analyzed
.startObject()
- .startObject( "template_1" ).field( "match", ANALYZED_STRING_PREFIX + "*" )
- .field( "match_mapping_type", "string" ).startObject( "mapping" ).field( "type", "string" )
- .field( "index", "analyzed" ).endObject().endObject()
+ .startObject("template_1").field( "match", ANALYZED_STRING_PREFIX + "*" )
+ .field("match_mapping_type", "string").startObject( "mapping" ).field( "type", "string" )
+ .field("index", "analyzed").endObject().endObject()
.endObject()
// all other strings are not analyzed
.startObject()
- .startObject( "template_2" )
+ .startObject("template_2")
//todo, should be string prefix, remove 2 field mapping
- .field( "match", "*" ).field( "match_mapping_type", "string" ).startObject( "mapping" )
- .field( "type", "string" )
- .field( "index", "not_analyzed" )
+ .field("match", "*").field( "match_mapping_type", "string" ).startObject( "mapping" )
+ .field("type", "string")
+ .field("index", "not_analyzed")
.endObject()
.endObject()
.endObject()
// fields names starting with go_ get geo-indexed
.startObject()
- .startObject( "template_3" )
- .field( "match", GEO_PREFIX + "location" )
- .startObject( "mapping" )
- .field( "type", "geo_point" )
+ .startObject("template_3")
+ .field("match", GEO_PREFIX + "location")
+ .startObject("mapping")
+ .field("type", "geo_point")
.endObject()
.endObject()
.endObject()
@@ -218,11 +228,6 @@ public class IndexingUtils {
return builder;
}
- public static String createAliasName(String indexName, IndexFig fig) {
- return indexName + fig.getAliasPostfix();
- }
- public static String getIndexName(String indexName, int i) {
- return indexName+"_v"+(i+1);
- }
+
}