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 2015/03/20 00:27:07 UTC
[50/50] [abbrv] incubator-usergrid git commit: fix collections it
fix collections it
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/735eedb2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/735eedb2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/735eedb2
Branch: refs/heads/USERGRID-480
Commit: 735eedb2c25d6149f58728cbde74ca0dbf7d9283
Parents: 70fe285
Author: Shawn Feldman <sf...@apache.org>
Authored: Thu Mar 19 17:24:32 2015 -0600
Committer: Shawn Feldman <sf...@apache.org>
Committed: Thu Mar 19 17:24:32 2015 -0600
----------------------------------------------------------------------
.../corepersistence/CpEntityManager.java | 7 ----
.../corepersistence/CpEntityManagerFactory.java | 6 +--
.../usergrid/corepersistence/CpSetup.java | 6 ++-
.../usergrid/persistence/EntityManager.java | 5 ---
.../cassandra/EntityManagerImpl.java | 6 ---
.../corepersistence/StaleIndexCleanupTest.java | 39 ++++++++++++++++----
.../usergrid/persistence/CollectionIT.java | 14 ++++---
.../index/impl/EsEntityIndexImpl.java | 4 ++
8 files changed, 53 insertions(+), 34 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
index a9f00b4..64f0257 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManager.java
@@ -2893,13 +2893,6 @@ public class CpEntityManager implements EntityManager {
@Override
- public void createIndex() {
- ei.initializeIndex();
- }
-
-
-
- @Override
public void flushManagerCaches() {
managerCache.invalidate();
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
index f3d18d0..134886f 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpEntityManagerFactory.java
@@ -160,8 +160,8 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
em.getApplication();
}
- em.createIndex();
- em.refreshIndex();
+ entityIndex.initializeIndex();
+ entityIndex.refresh();
} catch (Exception ex) {
@@ -723,7 +723,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
EntityManager em = getEntityManager( appId );
//explicitly invoke create index, we don't know if it exists or not in ES during a rebuild.
- em.createIndex();
+ entityIndex.initializeIndex();
em.reindex(po);
em.reindex( po );
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java
index d70c16c..a9e6cee 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpSetup.java
@@ -19,6 +19,8 @@ package org.apache.usergrid.corepersistence;
import java.util.UUID;
+import com.google.inject.Binding;
+import org.apache.usergrid.persistence.index.EntityIndex;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -64,6 +66,7 @@ public class CpSetup implements Setup {
private final CassandraService cass;
private final EntityManagerFactory emf;
+ private final EntityIndex entityIndex;
/**
@@ -75,6 +78,7 @@ public class CpSetup implements Setup {
this.emf = emf;
this.cass = cassandraService;
this.injector = injector;
+ this.entityIndex = injector.getInstance(EntityIndex.class);
}
@@ -95,7 +99,7 @@ public class CpSetup implements Setup {
setupStaticKeyspace();
//force the EMF creation of indexes before creating the default applications
- emf.refreshIndex();
+ entityIndex.initializeIndex();
injector.getInstance( DataMigrationManager.class ).migrate();
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java b/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
index 71dcd07..89a5384 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/EntityManager.java
@@ -690,11 +690,6 @@ public interface EntityManager {
*/
void refreshIndex();
- /**
- * Create the index, should ONLY ever be called the first time an application is created
- */
- void createIndex();
-
public void init( EntityManagerFactory emf, EntityIndex entityIndex, UUID applicationId);
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/main/java/org/apache/usergrid/persistence/cassandra/EntityManagerImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/cassandra/EntityManagerImpl.java b/stack/core/src/main/java/org/apache/usergrid/persistence/cassandra/EntityManagerImpl.java
index 803512b..112b684 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/cassandra/EntityManagerImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/cassandra/EntityManagerImpl.java
@@ -2890,12 +2890,6 @@ public class EntityManagerImpl implements EntityManager {
}
- @Override
- public void createIndex() {
- //no op
- }
-
-
@Override
public EntityRef getGroupRoleRef( UUID ownerId, String roleName) throws Exception {
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/test/java/org/apache/usergrid/corepersistence/StaleIndexCleanupTest.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/corepersistence/StaleIndexCleanupTest.java b/stack/core/src/test/java/org/apache/usergrid/corepersistence/StaleIndexCleanupTest.java
index fdd230c..450f44b 100644
--- a/stack/core/src/test/java/org/apache/usergrid/corepersistence/StaleIndexCleanupTest.java
+++ b/stack/core/src/test/java/org/apache/usergrid/corepersistence/StaleIndexCleanupTest.java
@@ -120,7 +120,14 @@ public class StaleIndexCleanupTest extends AbstractCoreIT {
assertTrue( "New version is greater than old",
UUIDComparator.staticCompare( newVersion, oldVersion ) > 0 );
- assertEquals( 2, queryCollectionCp( "things", "thing", "select *" ).size() );
+ CandidateResults results;
+ do{
+ results = queryCollectionCp( "things", "thing", "select *" );
+ if(results.size()!=2){
+ Thread.sleep(200);
+ }
+ }while(results.size()!=2);
+ assertEquals( 2, results.size() );
}
@@ -151,24 +158,42 @@ public class StaleIndexCleanupTest extends AbstractCoreIT {
UUID newVersion = getCpEntity( thing ).getVersion();
+ CandidateResults candidateResults = null;
+
+ do{
+ candidateResults = queryCollectionCp("things", "thing", "select * order by ordinal desc");
+ if(candidateResults.size()!=2){
+ Thread.sleep(200);
+ }
+ }while(candidateResults.size()<2);
- assertEquals(2, queryCollectionCp("things", "thing", "select * order by ordinal desc").size());
+ assertEquals(2, candidateResults.size());
//now run enable events and ensure we clean up
System.setProperty(EVENTS_DISABLED, "false");
- final Results results = queryCollectionEm("things", "select * order by ordinal desc");
-
+ Results results = null;
+ do{
+ results = queryCollectionEm("things", "select * order by ordinal desc");;
+ if(results.size()!=1){
+ Thread.sleep(200);
+ }
+ }while(results.size()<1);
assertEquals( 1, results.size() );
assertEquals(1, results.getEntities().get( 0 ).getProperty( "ordinal" ));
em.refreshIndex();
//ensure it's actually gone
- final CandidateResults candidates = queryCollectionCp( "things", "thing", "select * order by ordinal desc" );
- assertEquals(1, candidates.size());
+ do{
+ candidateResults = queryCollectionCp( "things", "thing", "select * order by ordinal desc" );
+ if(candidateResults.size()!=1){
+ Thread.sleep(200);
+ }
+ }while(candidateResults.size()!=1);
+ assertEquals(1, candidateResults.size());
- assertEquals(newVersion, candidates.get(0).getVersion());
+ assertEquals(newVersion, candidateResults.get(0).getVersion());
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
----------------------------------------------------------------------
diff --git a/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java b/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
index 641d3ad..aa75a9a 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/CollectionIT.java
@@ -1227,11 +1227,15 @@ public class CollectionIT extends AbstractCoreIT {
Query query = new Query();
query.addEqualityFilter( "rootprop1", "simpleprop" );
-
- Results results = em.searchCollection( em.getApplicationRef(), "tests", query );
-
- Entity entity = results.getEntitiesMap().get( saved.getUuid() );
-
+ Entity entity;
+ Results results;
+ do {
+ results = em.searchCollection(em.getApplicationRef(), "tests", query);
+ entity = results.getEntitiesMap().get(saved.getUuid());
+ if (entity == null) {
+ Thread.sleep(200);
+ }
+ }while(entity == null);
assertNotNull( entity );
// query on the nested int value
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/735eedb2/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 e92e133..04fde6a 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
@@ -18,6 +18,7 @@
package org.apache.usergrid.persistence.index.impl;
+import com.codahale.metrics.Meter;
import com.codahale.metrics.Timer;
import com.google.common.collect.ImmutableMap;
import com.google.inject.Inject;
@@ -105,6 +106,7 @@ public class EsEntityIndexImpl implements AliasedEntityIndex {
private EsIndexCache aliasCache;
private Timer mappingTimer;
private Timer refreshTimer;
+ private Meter refreshIndexMeter;
// private final Timer indexTimer;
@@ -131,6 +133,7 @@ public class EsEntityIndexImpl implements AliasedEntityIndex {
.getTimer(EsEntityIndexImpl.class, "create.mapping.timer");
this.refreshTimer = metricsFactory
.getTimer(EsEntityIndexImpl.class, "refresh.timer");
+ this.refreshIndexMeter = metricsFactory.getMeter(EsEntityIndexImpl.class,"refresh.meter");
}
@@ -323,6 +326,7 @@ public class EsEntityIndexImpl implements AliasedEntityIndex {
public void refresh() {
+ refreshIndexMeter.mark();
BetterFuture future = indexBatchBufferProducer.put(new IndexOperationMessage());
future.get();