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);