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 2015/05/10 13:00:09 UTC
[16/39] incubator-usergrid git commit: adding poll methodology for
tests
adding poll methodology for tests
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/0ef6c24c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/0ef6c24c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/0ef6c24c
Branch: refs/heads/USERGRID-614
Commit: 0ef6c24c022c2f9508749e10db2649f52bbd4ff4
Parents: cc5f05d
Author: Shawn Feldman <sf...@apache.org>
Authored: Wed May 6 08:24:35 2015 -0600
Committer: Shawn Feldman <sf...@apache.org>
Committed: Wed May 6 08:24:35 2015 -0600
----------------------------------------------------------------------
.../usergrid/corepersistence/CoreModule.java | 2 ++
.../corepersistence/CpEntityManager.java | 25 ++++---------
.../corepersistence/CpEntityManagerFactory.java | 4 ++-
.../corepersistence/CpRelationManager.java | 17 ++++-----
.../corepersistence/EntityManagerFig.java | 38 ++++++++++++++++++++
.../org/apache/usergrid/rest/IndexResource.java | 5 +--
.../rest/test/RefreshIndexResource.java | 2 +-
7 files changed, 59 insertions(+), 34 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
index b5544cb..d7038cd 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
@@ -159,6 +159,8 @@ public class CoreModule extends AbstractModule {
install( new GuicyFigModule( ApplicationIdCacheFig.class ) );
+ install( new GuicyFigModule( EntityManagerFig.class ) );
+
//install our pipeline modules
install(new PipelineModule());
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/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 d8721ea..e481906 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
@@ -17,21 +17,7 @@ package org.apache.usergrid.corepersistence;
import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeMap;
-import java.util.TreeSet;
-import java.util.UUID;
+import java.util.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -165,6 +151,7 @@ public class CpEntityManager implements EntityManager {
public static final long ONE_COUNT = 1L;
private final UUID applicationId;
+ private final EntityManagerFig entityManagerFig;
private Application application;
@@ -217,11 +204,11 @@ public class CpEntityManager implements EntityManager {
* @param managerCache
* @param metricsFactory
* @param applicationId
- * @param entityCollectionManagerFactory
- * @param graphManagerFactory
*/
public CpEntityManager( final CassandraService cass, final CounterUtils counterUtils, final AsyncEventService indexService, final ManagerCache managerCache,
- final MetricsFactory metricsFactory,final PipelineBuilderFactory pipelineBuilderFactory , final UUID applicationId ) {
+ final MetricsFactory metricsFactory, final EntityManagerFig entityManagerFig,
+ final PipelineBuilderFactory pipelineBuilderFactory , final UUID applicationId ) {
+ this.entityManagerFig = entityManagerFig;
Preconditions.checkNotNull( cass, "cass must not be null" );
@@ -745,7 +732,7 @@ public class CpEntityManager implements EntityManager {
Preconditions.checkNotNull( entityRef, "entityRef cannot be null" );
CpRelationManager relationManager =
- new CpRelationManager( metricsFactory, managerCache, pipelineBuilderFactory, indexService, this, applicationId, entityRef );
+ new CpRelationManager( metricsFactory, managerCache, pipelineBuilderFactory, indexService, this, entityManagerFig, applicationId, entityRef );
return relationManager;
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/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 6758977..f9bf12d 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
@@ -98,6 +98,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
private static final Logger logger = LoggerFactory.getLogger( CpEntityManagerFactory.class );
private final EntityIndexFactory entityIndexFactory;
+ private final EntityManagerFig entityManagerFig;
private ApplicationContext applicationContext;
@@ -132,6 +133,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
this.cassandraService = cassandraService;
this.counterUtils = counterUtils;
this.injector = injector;
+ this.entityManagerFig = injector.getInstance(EntityManagerFig.class);
this.entityIndex = injector.getInstance(EntityIndex.class);
this.entityIndexFactory = injector.getInstance(EntityIndexFactory.class);
this.managerCache = injector.getInstance( ManagerCache.class );
@@ -196,7 +198,7 @@ public class CpEntityManagerFactory implements EntityManagerFactory, Application
private EntityManager _getEntityManager( UUID applicationId ) {
- EntityManager em = new CpEntityManager(cassandraService, counterUtils, indexService, managerCache, metricsFactory, pipelineBuilderFactory, applicationId );
+ EntityManager em = new CpEntityManager(cassandraService, counterUtils, indexService, managerCache, metricsFactory, entityManagerFig, pipelineBuilderFactory, applicationId );
return em;
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
index 7d75eed..e76383f 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CpRelationManager.java
@@ -17,14 +17,7 @@
package org.apache.usergrid.corepersistence;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.UUID;
+import java.util.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -104,6 +97,7 @@ import static org.apache.usergrid.utils.MapUtils.addMapSet;
public class CpRelationManager implements RelationManager {
private static final Logger logger = LoggerFactory.getLogger( CpRelationManager.class );
+ private final EntityManagerFig entityManagerFig;
private ManagerCache managerCache;
private final PipelineBuilderFactory pipelineBuilderFactory;
@@ -126,7 +120,7 @@ public class CpRelationManager implements RelationManager {
public CpRelationManager( final MetricsFactory metricsFactory, final ManagerCache managerCache,
final PipelineBuilderFactory pipelineBuilderFactory, final AsyncEventService indexService,
- final EntityManager em, final UUID applicationId, final EntityRef headEntity ) {
+ final EntityManager em, final EntityManagerFig entityManagerFig, final UUID applicationId, final EntityRef headEntity) {
Assert.notNull( em, "Entity manager cannot be null" );
@@ -134,6 +128,7 @@ public class CpRelationManager implements RelationManager {
Assert.notNull( headEntity, "Head entity cannot be null" );
Assert.notNull( headEntity.getUuid(), "Head entity uuid cannot be null" );
Assert.notNull( indexService, "indexService cannot be null" );
+ this.entityManagerFig = entityManagerFig;
// TODO: this assert should not be failing
//Assert.notNull( indexBucketLocator, "indexBucketLocator cannot be null" );
@@ -655,8 +650,8 @@ public class CpRelationManager implements RelationManager {
@Override
public Results searchCollectionConsistent( String collName, Query query, int expectedResults ) throws Exception {
Results results;
- long maxLength = 5000;
- long sleepTime = 250;
+ long maxLength = entityManagerFig.pollForRecordsTimeout();
+ long sleepTime = entityManagerFig.sleep();
boolean found;
long current = System.currentTimeMillis(), length = 0;
do {
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/stack/core/src/main/java/org/apache/usergrid/corepersistence/EntityManagerFig.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/EntityManagerFig.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/EntityManagerFig.java
new file mode 100644
index 0000000..f5747af
--- /dev/null
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/EntityManagerFig.java
@@ -0,0 +1,38 @@
+/*
+ *
+ * * Licensed to the Apache Software Foundation (ASF) under one or more
+ * * contributor license agreements. The ASF licenses this file to You
+ * * under the Apache License, Version 2.0 (the "License"); you may not
+ * * use this file except in compliance with the License.
+ * * You may obtain a copy of the License at
+ * *
+ * * http://www.apache.org/licenses/LICENSE-2.0
+ * *
+ * * Unless required by applicable law or agreed to in writing, software
+ * * distributed under the License is distributed on an "AS IS" BASIS,
+ * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * * See the License for the specific language governing permissions and
+ * * limitations under the License. For additional information regarding
+ * * copyright in this work, please see the NOTICE file in the top level
+ * * directory of this distribution.
+ *
+ */
+package org.apache.usergrid.corepersistence;
+
+import org.safehaus.guicyfig.Default;
+import org.safehaus.guicyfig.GuicyFig;
+import org.safehaus.guicyfig.Key;
+
+/**
+ * Classy class class.
+ */
+public interface EntityManagerFig extends GuicyFig {
+
+ @Key( "usergrid.entitymanager_poll_timeout_ms" )
+ @Default( "5000" )
+ int pollForRecordsTimeout();
+
+ @Key( "usergrid.entityManager_sleep_ms" )
+ @Default( "100" )
+ int sleep();
+}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/stack/rest/src/main/java/org/apache/usergrid/rest/IndexResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/IndexResource.java b/stack/rest/src/main/java/org/apache/usergrid/rest/IndexResource.java
index 86ba5f8..668c05c 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/IndexResource.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/IndexResource.java
@@ -20,6 +20,7 @@
package org.apache.usergrid.rest;
+import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
import com.sun.jersey.api.json.JSONWithPadding;
import org.apache.usergrid.persistence.EntityManagerFactory;
@@ -297,8 +298,8 @@ public class IndexResource extends AbstractContextResource {
logger.info( "Reindexing for app id: {} and collection {}", applicationId, collectionName );
- emf.rebuildCollectionIndex(applicationId, collectionName, reverse, po);
- getEntityIndex().refreshAsync().toBlocking().last();
+ emf.rebuildCollectionIndex(Optional.of(applicationId),Optional.of(collectionName));
+ getEntityIndex().refreshAsync().toBlocking().first();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/0ef6c24c/stack/rest/src/main/java/org/apache/usergrid/rest/test/RefreshIndexResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/main/java/org/apache/usergrid/rest/test/RefreshIndexResource.java b/stack/rest/src/main/java/org/apache/usergrid/rest/test/RefreshIndexResource.java
index 41d5ef5..555d00c 100644
--- a/stack/rest/src/main/java/org/apache/usergrid/rest/test/RefreshIndexResource.java
+++ b/stack/rest/src/main/java/org/apache/usergrid/rest/test/RefreshIndexResource.java
@@ -66,7 +66,7 @@ public class RefreshIndexResource extends AbstractContextResource {
}
// refresh the system apps or app lookup below may fail
- getEntityIndex().refreshAsync().toBlocking().last();
+ getEntityIndex().refreshAsync().toBlocking().first();
} catch (Exception e) {
logger.error("Error in refresh", e);