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/11/12 23:15:05 UTC

[15/15] usergrid git commit: Merge branch 'refs/heads/2.1-release'

Merge branch 'refs/heads/2.1-release'


Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/14dd48d3
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/14dd48d3
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/14dd48d3

Branch: refs/heads/master
Commit: 14dd48d39d37abf97092264003942dcb73b3ccdf
Parents: 67ab244 6f61b05
Author: Todd Nine <tn...@apigee.com>
Authored: Thu Nov 12 15:14:44 2015 -0700
Committer: Todd Nine <tn...@apigee.com>
Committed: Thu Nov 12 15:14:44 2015 -0700

----------------------------------------------------------------------
 .../usergrid/corepersistence/CoreModule.java    | 132 ++++++++++++++-----
 .../asyncevents/AmazonAsyncEventService.java    |  39 +++++-
 .../asyncevents/AsyncEventsSchedulerFig.java    |  94 +++++++++++++
 .../asyncevents/AsyncIndexProvider.java         |   2 +-
 .../asyncevents/EventExecutionScheduler.java    |  37 ++++++
 .../traverse/ReadGraphCollectionFilter.java     |   3 +-
 .../traverse/ReadGraphConnectionFilter.java     |   3 +-
 .../corepersistence/rx/impl/AsyncRepair.java    |  38 ++++++
 .../rx/impl/ResponseImportTasks.java            |  38 ++++++
 .../service/ServiceSchedulerFig.java            |  66 ++++++++++
 .../collection/guice/CollectionModule.java      |  32 +++++
 .../guice/CollectionTaskExecutor.java           |  35 -----
 .../EntityCollectionManagerFactoryImpl.java     |   5 +-
 .../impl/EntityCollectionManagerImpl.java       |  17 ++-
 .../mvcc/stage/delete/UniqueCleanup.java        |  12 +-
 .../mvcc/stage/write/WriteCommit.java           |  10 +-
 .../scheduler/CollectionExecutorScheduler.java  |  52 ++++++++
 .../scheduler/CollectionSchedulerFig.java       |  53 ++++++++
 .../collection/EntityCollectionManagerIT.java   |  68 ++++++++++
 .../mvcc/stage/delete/MarkCommitTest.java       |   2 +-
 .../mvcc/stage/write/WriteCommitTest.java       |   2 +-
 .../core/executor/TaskExecutorFactory.java      | 108 +++++++++++----
 .../persistence/core/guice/CommonModule.java    |  25 ++--
 .../persistence/core/rx/RxSchedulerFig.java     |  71 ----------
 .../core/rx/RxTaskSchedulerImpl.java            |  81 +-----------
 .../index/impl/DeIndexOperation.java            |   4 +-
 .../persistence/index/impl/IndexingUtils.java   |  21 +++
 .../index/impl/IndexingUtilsTest.java           |  36 +++++
 .../usergrid/services/AbstractService.java      |  13 +-
 29 files changed, 815 insertions(+), 284 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/usergrid/blob/14dd48d3/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
----------------------------------------------------------------------
diff --cc stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
index ae69b6f,5d2d8dc..aacf6e9
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/CoreModule.java
@@@ -16,7 -16,8 +16,9 @@@
  package org.apache.usergrid.corepersistence;
  
  
 +import org.apache.usergrid.persistence.cache.guice.CacheModule;
+ import java.util.concurrent.ThreadPoolExecutor;
+ 
  import org.safehaus.guicyfig.GuicyFigModule;
  
  import org.apache.usergrid.corepersistence.asyncevents.AsyncEventService;

http://git-wip-us.apache.org/repos/asf/usergrid/blob/14dd48d3/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/AmazonAsyncEventService.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/usergrid/blob/14dd48d3/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/AsyncIndexProvider.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/usergrid/blob/14dd48d3/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
----------------------------------------------------------------------
diff --cc stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/IndexingUtils.java
index 90840af,179b3c4..adaed0f
--- 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
@@@ -223,44 -221,46 +223,61 @@@ public class IndexingUtils 
      }
  
  
 -    /**
 -     * Parse the document id into a candidate result
 -     */
 -    public static CandidateResult parseIndexDocId( final String documentId ) {
 +    public static CandidateResult parseIndexDocId( final SearchHit hit ) {
 +        return parseIndexDocId(hit.getId());
 +    }
 +
 +    public static CandidateResult parseIndexDocId( final SearchHit hit, boolean isGeo ) {
  
 +        final String documentId = hit.getId();
 +        final double distance = isGeo ? (double) hit.sortValues()[0] : -1;
 +        return parseIndexDocId(documentId,distance);
 +    }
 +
 +    public static CandidateResult parseIndexDocId( final String documentId ) {
 +        return parseIndexDocId(documentId,-1);
 +    }
 +        /**
 +         * Parse the document id into a candidate result
 +         */
 +    public static CandidateResult parseIndexDocId( final String documentId, final double distance ) {
  
 -        final Matcher matcher = DOCUMENT_PATTERN.matcher( documentId );
 +        final Matcher matcher = DOCUMENT_PATTERN.matcher(documentId);
  
 -        Preconditions.checkArgument( matcher.matches(), "Pattern for document id did not match expected format" );
 -        Preconditions.checkArgument( matcher.groupCount() == 9, "9 groups expected in the pattern" );
 +        Preconditions.checkArgument(matcher.matches(), "Pattern for document id did not match expected format");
 +        Preconditions.checkArgument(matcher.groupCount() == 9, "9 groups expected in the pattern");
  
          //Other fields can be parsed using groups.  The groups start at value 1, group 0 is the entire match
 -        final String entityUUID = matcher.group( 3 );
 -        final String entityType = matcher.group( 4 );
 +        final String entityUUID = matcher.group(3);
 +        final String entityType = matcher.group(4);
  
 -        final String versionUUID = matcher.group( 5 );
 +        final String versionUUID = matcher.group(5);
  
  
 -        Id entityId = new SimpleId( UUID.fromString( entityUUID ), entityType );
 +        Id entityId = new SimpleId(UUID.fromString(entityUUID), entityType);
  
 -        return new CandidateResult( entityId, UUID.fromString( versionUUID ), documentId );
 +        return distance >= 0
 +            ? new GeoCandidateResult(entityId, UUID.fromString(versionUUID), documentId, distance)
 +            : new CandidateResult(entityId, UUID.fromString(versionUUID), documentId);
      }
  
+     /**
+      * Parse the document id into a candidate result
+      */
+     public static UUID parseAppIdFromIndexDocId( final String documentId) {
+ 
+         final Matcher matcher = DOCUMENT_PATTERN.matcher(documentId);
+ 
+         Preconditions.checkArgument(matcher.matches(), "Pattern for document id did not match expected format");
+         Preconditions.checkArgument(matcher.groupCount() == 9, "9 groups expected in the pattern");
+ 
+         //Other fields can be parsed using groups.  The groups start at value 1, group 0 is the entire match
+         final String appUUID = matcher.group(1);
+ 
+         return UUID.fromString(appUUID);
+ 
+     }
+ 
  
      /**
       * Get the entity type

http://git-wip-us.apache.org/repos/asf/usergrid/blob/14dd48d3/stack/services/src/main/java/org/apache/usergrid/services/AbstractService.java
----------------------------------------------------------------------
diff --cc stack/services/src/main/java/org/apache/usergrid/services/AbstractService.java
index e7d4fc4,3887f92..88d87fe
--- a/stack/services/src/main/java/org/apache/usergrid/services/AbstractService.java
+++ b/stack/services/src/main/java/org/apache/usergrid/services/AbstractService.java
@@@ -27,7 -27,9 +27,10 @@@ import java.util.Set
  import java.util.UUID;
  
  import com.codahale.metrics.Timer;
 +import org.apache.usergrid.persistence.cache.CacheFactory;
+ 
+ import org.apache.usergrid.corepersistence.rx.impl.ResponseImportTasks;
+ import org.apache.usergrid.corepersistence.service.ServiceSchedulerFig;
  import org.apache.usergrid.persistence.core.metrics.MetricsFactory;
  import org.apache.usergrid.persistence.core.metrics.ObservableTimer;
  import org.slf4j.Logger;