Repository: incubator-usergrid
Updated Branches:
  refs/heads/two-dot-o-dev 597dfc2f9 -> fd6305c18


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/main/java/org/apache/usergrid/corepersistence/results/ObservableQueryExecutor.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/corepersistence/results/ObservableQueryExecutor.java
 
b/stack/core/src/main/java/org/apache/usergrid/corepersistence/results/ObservableQueryExecutor.java
index f5a2893..f3c2a9c 100644
--- 
a/stack/core/src/main/java/org/apache/usergrid/corepersistence/results/ObservableQueryExecutor.java
+++ 
b/stack/core/src/main/java/org/apache/usergrid/corepersistence/results/ObservableQueryExecutor.java
@@ -20,17 +20,29 @@
 package org.apache.usergrid.corepersistence.results;
 
 
+import java.util.ArrayList;
 import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
 import java.util.NoSuchElementException;
 
+import org.apache.usergrid.corepersistence.pipeline.PipelineResult;
+import org.apache.usergrid.corepersistence.pipeline.read.ResultsPage;
+import org.apache.usergrid.corepersistence.util.CpEntityMapUtils;
+import org.apache.usergrid.persistence.EntityFactory;
 import org.apache.usergrid.persistence.Results;
+import org.apache.usergrid.persistence.collection.MvccEntity;
+import org.apache.usergrid.persistence.model.entity.Entity;
+import org.apache.usergrid.persistence.model.entity.Id;
+
+import com.google.common.base.Optional;
 
 import rx.Observable;
 
 
 /**
- * Our proxy to allow us to subscribe to observable results, then return them 
as an interator.  A bridge for 2.0 -> 1.0
- * code
+ * Our proxy to allow us to subscribe to observable results, then return them 
as an iterator.  A bridge for 2.0 -> 1.0
+ * code.  This should not be used on any new code, and will eventually be 
deleted
  */
 public class ObservableQueryExecutor implements QueryExecutor {
 
@@ -39,9 +51,47 @@ public class ObservableQueryExecutor implements 
QueryExecutor {
     public Iterator<Results> iterator;
 
 
-    public ObservableQueryExecutor( final Observable<Results> 
resultsObservable ) {
-        //in no values,  we must emit an empty results so add the default
-        this.resultsObservable = resultsObservable.defaultIfEmpty( new 
Results() );
+    public ObservableQueryExecutor( final 
Observable<PipelineResult<ResultsPage>> resultsObservable ) {
+       //map to our old results objects, return a default empty if required
+        this.resultsObservable = resultsObservable.map( resultsPage -> 
createResults( resultsPage ) ).defaultIfEmpty( new Results() );
+    }
+
+
+
+    private org.apache.usergrid.persistence.Entity mapEntity( final Entity 
cpEntity ) {
+
+
+        final Id entityId = cpEntity.getId();
+
+        org.apache.usergrid.persistence.Entity entity =
+            EntityFactory.newEntity( entityId.getUuid(), entityId.getType() );
+
+        Map<String, Object> entityMap = CpEntityMapUtils.toMap( cpEntity );
+        entity.addProperties( entityMap );
+
+        return entity;
+    }
+
+    private Results createResults( final PipelineResult<ResultsPage> 
pipelineResults ){
+
+        final ResultsPage resultsPage = pipelineResults.getResult();
+        final List<Entity> entityList = resultsPage.getEntityList();
+        final List<org.apache.usergrid.persistence.Entity> resultsEntities = 
new ArrayList<>( entityList.size() );
+
+
+        for(final Entity entity: entityList){
+            resultsEntities.add( mapEntity( entity ) );
+        }
+
+        final Results results = Results.fromEntities( resultsEntities );
+
+        if(pipelineResults.getCursor().isPresent()) {
+            results.setCursor( pipelineResults.getCursor().get() );
+        }
+
+        return results;
+
+
     }
 
 
@@ -74,4 +124,6 @@ public class ObservableQueryExecutor implements 
QueryExecutor {
 
         return next;
     }
+
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/main/java/org/apache/usergrid/persistence/Query.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/main/java/org/apache/usergrid/persistence/Query.java 
b/stack/core/src/main/java/org/apache/usergrid/persistence/Query.java
index 930b98e..16f3ed0 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/Query.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/Query.java
@@ -23,7 +23,6 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
-import java.nio.ByteBuffer;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
@@ -31,7 +30,6 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.UUID;
 
-import com.netflix.astyanax.serializers.IntegerSerializer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -54,8 +52,8 @@ import com.google.common.base.Optional;
 
 
 public class Query {
-    private static final Logger logger = LoggerFactory.getLogger( Query.class 
);
-    private static final IntegerSerializer INTEGER_SERIALIZER = 
IntegerSerializer.get();
+
+
 
     public enum Level {
         IDS, REFS, CORE_PROPERTIES, ALL_PROPERTIES, LINKED_PROPERTIES
@@ -70,7 +68,7 @@ public class Query {
     private String type;
     private Operand rootOperand;
     private UUID startResult;
-    private Optional<Integer> offset;
+    private Optional<String> cursor = Optional.absent();
     private int limit = 0;
 
     private boolean mergeSelectResults = false;
@@ -96,7 +94,6 @@ public class Query {
     List<Operand> filterClauses = new ArrayList<Operand>();
 
     public Query() {
-        offset = Optional.absent();
     }
 
 
@@ -112,7 +109,7 @@ public class Query {
         ql = q.ql;
         type = q.type;
         startResult = q.startResult;
-        offset = q.offset;
+        cursor = q.cursor;
         limit = q.limit;
         mergeSelectResults = q.mergeSelectResults;
         //level = q.level;
@@ -182,6 +179,23 @@ public class Query {
     }
 
 
+    public static Query fromJsonString( String json ) throws 
QueryParseException {
+
+        Object o;
+        try {
+            o = mapper.readValue( json, Object.class );
+        } catch (IOException ex) {
+            throw new QueryParseException("Error parsing JSON query string " + 
json, ex);
+        }
+
+        if ( o instanceof Map ) {
+            @SuppressWarnings({ "unchecked", "rawtypes" }) Map<String, 
List<String>> params =
+                    ClassUtils.cast( MapUtils.toMapList( ( Map ) o ) );
+            return fromQueryParams( params );
+        }
+        return null;
+    }
+
 
     public static Query fromQueryParams( Map<String, List<String>> params )
             throws QueryParseException {
@@ -190,13 +204,12 @@ public class Query {
         List<Identifier> identifiers = null;
         List<CounterFilterPredicate> counterFilters = null;
 
-        String ql = QueryUtils.queryStrFrom(params);
-        String type = ListUtils.first(params.get("type"));
-        Boolean reversed = ListUtils.firstBoolean(params.get("reversed"));
-        String connection = ListUtils.first(params.get("connectionType"));
-        UUID start = ListUtils.firstUuid(params.get("start"));
-        String cursor = ListUtils.first(params.get("cursor"));
-
+        String ql = QueryUtils.queryStrFrom( params );
+        String type = ListUtils.first( params.get( "type" ) );
+        Boolean reversed = ListUtils.firstBoolean( params.get( "reversed" ) );
+        String connection = ListUtils.first( params.get( "connectionType" ) );
+        UUID start = ListUtils.firstUuid( params.get( "start" ) );
+        String cursor = ListUtils.first( params.get( "cursor" ) );
         Integer limit = ListUtils.firstInteger( params.get( "limit" ) );
         List<String> permissions = params.get( "permission" );
         Long startTime = ListUtils.firstLong( params.get( "start_time" ) );
@@ -252,11 +265,9 @@ public class Query {
             q.setStartResult( start );
         }
 
-        if ( cursor != null) {
+        if ( cursor != null ) {
             q = newQueryIfNull( q );
-            q.setOffsetFromCursor(cursor);
-        }else{
-            q.offset = Optional.absent();
+            q.setCursor( cursor );
         }
 
         if ( limit != null ) {
@@ -305,7 +316,7 @@ public class Query {
 
     public static Query fromUUID( UUID uuid ) {
         Query q = new Query();
-        q.addIdentifier( Identifier.fromUUID(uuid) );
+        q.addIdentifier( Identifier.fromUUID( uuid ) );
         return q;
     }
 
@@ -495,68 +506,37 @@ public class Query {
     }
 
 
-    public Optional<Integer> getOffset() {
-        return offset;
-    }
-
-    public String getOffsetCursor() {
-
-        //TODO refactor cursor logic for encapsulation at level using it
-
-        String cursor = "";
-        if(offset.isPresent()){
-            ByteBuffer buffer = INTEGER_SERIALIZER.toByteBuffer(offset.get());
-            cursor = Base64.encodeBase64String(buffer.array());
-        }
+    public Optional<String> getCursor() {
         return cursor;
     }
 
-    public void setOffsetFromCursor(String cursor) {
-        if(cursor == null || cursor.length() == 0){
-            clearOffset();
-        }else {
-            byte[] bytes = Base64.decodeBase64(cursor);
-            ByteBuffer buffer = ByteBuffer.wrap(bytes);
-            Integer number  = INTEGER_SERIALIZER.fromByteBuffer(buffer);
-            setOffset(number);
-        }
-    }
 
-    public void clearOffset() {
-        this.offset = Optional.absent();
+    public void setCursor( String cursor ) {
+        this.cursor = Optional.fromNullable( cursor );
     }
 
-    public void setOffset( int offset ) {
-        this.offset = Optional.of(offset);
-    }
-
-
-    public Query withOffset( int offset ) {
-        setOffset(offset);
-        return this;
-    }
 
-    public Query withOffsetFromCursor( String cursor ) {
-        setOffsetFromCursor(cursor);
+    public Query withCursor( String cursor ) {
+        setCursor( cursor );
         return this;
     }
 
 
-    public int getLimit() {
+    public Optional<Integer> getLimit() {
         return getLimit( DEFAULT_LIMIT );
     }
 
 
-    public int getLimit( int defaultLimit ) {
+    public Optional<Integer> getLimit( int defaultLimit ) {
         if ( limit <= 0 ) {
             if ( defaultLimit > 0 ) {
-                return defaultLimit;
+                return Optional.of( defaultLimit);
             }
             else {
-                return DEFAULT_LIMIT;
+                return Optional.of( DEFAULT_LIMIT );
             }
         }
-        return limit;
+        return Optional.of( limit );
     }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/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 ce12419..e5bcab5 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
@@ -495,7 +495,7 @@ public class StaleIndexCleanupTest extends AbstractCoreIT {
         SearchEdge is = CpNamingUtils.createCollectionSearchEdge( rootId, 
collName );
 
 
-        return ei.search( is, SearchTypes.fromTypes( type ), query, 10000 );
+        return ei.search( is, SearchTypes.fromTypes( type ), query, 10000, 0 );
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/AsyncIndexServiceTest.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/AsyncIndexServiceTest.java
 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/AsyncIndexServiceTest.java
index 8dfa971..19e73d3 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/AsyncIndexServiceTest.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/AsyncIndexServiceTest.java
@@ -177,7 +177,7 @@ public abstract class AsyncIndexServiceTest {
 
         for ( int i = 0; i < attempts; i++ ) {
             final CandidateResults candidateResults =
-                applicationEntityIndex.search( searchEdge, searchTypes, 
"select *", 100 );
+                applicationEntityIndex.search( searchEdge, searchTypes, 
"select *", 100, 0 );
 
             if ( candidateResults.size() == expectedSize ) {
                 return candidateResults;

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/IndexServiceTest.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/IndexServiceTest.java
 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/IndexServiceTest.java
index 92eb2e0..8ba4397 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/IndexServiceTest.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/index/IndexServiceTest.java
@@ -305,7 +305,7 @@ public class IndexServiceTest {
 
         for ( int i = 0; i < attempts; i++ ) {
             final CandidateResults candidateResults =
-                applicationEntityIndex.search( searchEdge, searchTypes, ql , 
count );
+                applicationEntityIndex.search( searchEdge, searchTypes, ql , 
count, 0 );
 
             if ( candidateResults.size() == expectedSize ) {
                 return candidateResults;

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/corepersistence/pipeline/cursor/CursorTest.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/pipeline/cursor/CursorTest.java
 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/pipeline/cursor/CursorTest.java
index fec3e78..6e15d54 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/corepersistence/pipeline/cursor/CursorTest.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/corepersistence/pipeline/cursor/CursorTest.java
@@ -66,13 +66,13 @@ public class CursorTest {
 
         responseCursor.setCursor(3, query2, 
ElasticsearchCursorSerializer.INSTANCE);
 
-        final String cursor = responseCursor.encodeAsString();
+        final Optional<String> cursor = responseCursor.encodeAsString();
 
 
 
         //now parse it
 
-        final RequestCursor requestCursor = new RequestCursor( Optional.of( 
cursor ) );
+        final RequestCursor requestCursor = new RequestCursor(  cursor  );
 
         //get everything else out.  We reversed the order for because we can, 
order shouldn't matter.
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/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 c3dd19d..fcdc11f 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
@@ -835,14 +835,14 @@ public class CollectionIT extends AbstractCoreIT {
 
 
         query = Query.fromQL( "select * where NOT subObjectArray.subField = 
'Bar'" ).withLimit( 1 )
-                     .withOffsetFromCursor( r.getCursor() );
+                     .withCursor( r.getCursor() );
         r = em.searchCollection( em.getApplicationRef(), "games", query );
         assertEquals( 1, r.size() );
         assertNotNull( r.getCursor() );
         assertEquals( entity1, r.getEntities().get( 0 ) );
 
         query = Query.fromQL( "select * where NOT subObjectArray.subField = 
'Bar'" ).withLimit( 1 )
-                     .withOffsetFromCursor( r.getCursor() );
+                     .withCursor( r.getCursor() );
         r = em.searchCollection( em.getApplicationRef(), "games", query );
         assertEquals( 0, r.size() );
         assertNull( r.getCursor() );
@@ -983,7 +983,7 @@ public class CollectionIT extends AbstractCoreIT {
 
         // try the next page, set our cursor, it should be the last 5 entities
         query = new Query();
-        query.setOffsetFromCursor( r.getCursor() );
+        query.setCursor( r.getCursor() );
 
         r = em.searchCollection( em.getApplicationRef(), "objects", query );
 
@@ -1036,7 +1036,7 @@ public class CollectionIT extends AbstractCoreIT {
                 assertEquals( entityIds.get( i * pageSize + j ), 
r.getEntities().get( j ).getUuid() );
             }
 
-            query.setOffsetFromCursor( r.getCursor() );
+            query.setCursor( r.getCursor() );
         }
 
         //check our last search
@@ -1094,7 +1094,7 @@ public class CollectionIT extends AbstractCoreIT {
                 assertEquals( entityId, r.getEntities().get( j ).getUuid() );
             }
 
-            query.setOffsetFromCursor( r.getCursor() );
+            query.setCursor( r.getCursor() );
         }
 
         r = em.searchCollection( em.getApplicationRef(), "pages", query );
@@ -1147,7 +1147,7 @@ public class CollectionIT extends AbstractCoreIT {
                 assertEquals( expectedId, r.getEntities().get( j ).getUuid() );
             }
 
-            query.setOffsetFromCursor( r.getCursor() );
+            query.setCursor( r.getCursor() );
         }
 
         r = em.searchCollection( em.getApplicationRef(), "pages", query );

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java 
b/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
index 1e62af2..f443201 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/GeoIT.java
@@ -416,7 +416,7 @@ public class GeoIT extends AbstractCoreIT {
             }
 
             // set for the next "page"
-            query.setOffsetFromCursor(results.getCursor());
+            query.setCursor(results.getCursor());
         }
         while (results.getCursor() != null);
 
@@ -462,7 +462,7 @@ public class GeoIT extends AbstractCoreIT {
             }
 
             // set for the next "page"
-            query.setOffsetFromCursor(results.getCursor());
+            query.setCursor(results.getCursor());
         }
         while (results.getCursor() != null);
 
@@ -521,7 +521,7 @@ public class GeoIT extends AbstractCoreIT {
                 count++;
             }
         }
-        while (query.getOffset().isPresent());
+        while (query.getCursor().isPresent());
 
         // check we got back all 500 entities
         assertEquals(numEntities, count);
@@ -577,7 +577,7 @@ public class GeoIT extends AbstractCoreIT {
                 count++;
             }
 
-            query.setOffsetFromCursor(r.getCursor());
+            query.setCursor(r.getCursor());
         }
         while (r.hasCursor());
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/IndexIT.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/IndexIT.java 
b/stack/core/src/test/java/org/apache/usergrid/persistence/IndexIT.java
index 63bbbeb..4ab3c7d 100644
--- a/stack/core/src/test/java/org/apache/usergrid/persistence/IndexIT.java
+++ b/stack/core/src/test/java/org/apache/usergrid/persistence/IndexIT.java
@@ -81,14 +81,14 @@ public class IndexIT extends AbstractCoreIT {
             i++;
         }
 
-        query = Query.fromQL( "order by name" 
).withOffsetFromCursor(r.getCursor());
+        query = Query.fromQL( "order by name" ).withCursor(r.getCursor());
         r = em.searchCollection( em.getApplicationRef(), "items", query );
         for ( Entity entity : r.getEntities() ) {
             assertEquals( alphabet[i], entity.getProperty( "name" ) );
             i++;
         }
 
-        query = Query.fromQL( "order by name" 
).withOffsetFromCursor(r.getCursor());
+        query = Query.fromQL( "order by name" ).withCursor(r.getCursor());
         r = em.searchCollection( em.getApplicationRef(), "items", query );
         for ( Entity entity : r.getEntities() ) {
             assertEquals( alphabet[i], entity.getProperty( "name" ) );
@@ -106,7 +106,7 @@ public class IndexIT extends AbstractCoreIT {
             assertEquals( alphabet[i], entity.getProperty( "name" ) );
         }
 
-        query = Query.fromQL( "order by name desc" 
).withOffsetFromCursor(r.getCursor());
+        query = Query.fromQL( "order by name desc" ).withCursor(r.getCursor());
         r = em.searchCollection( em.getApplicationRef(), "items", query );
         // LOG.info(JsonUtils.mapToFormattedJsonString(r.getEntities()));
         for ( Entity entity : r.getEntities() ) {
@@ -114,7 +114,7 @@ public class IndexIT extends AbstractCoreIT {
             assertEquals( alphabet[i], entity.getProperty( "name" ) );
         }
 
-        query = Query.fromQL( "order by name desc" ).withOffsetFromCursor( 
r.getCursor() );
+        query = Query.fromQL( "order by name desc" ).withCursor( r.getCursor() 
);
         r = em.searchCollection( em.getApplicationRef(), "items", query );
         for ( Entity entity : r.getEntities() ) {
             i--;

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
 
b/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
index df0b4ec..a293a0c 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/persistence/PerformanceEntityRebuildIndexTest.java
@@ -423,7 +423,7 @@ public class PerformanceEntityRebuildIndexTest extends 
AbstractCoreIT {
 
             if ( results.hasCursor() ) {
                 logger.info( "Counted {} : query again with cursor", count);
-                q.setOffsetFromCursor( results.getCursor() );
+                q.setCursor( results.getCursor() );
                 results = em.searchCollection( em.getApplicationRef(), 
collectionName, q );
 
             } else {

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionTransitivePagingIT.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionTransitivePagingIT.java
 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionTransitivePagingIT.java
index e2fb02e..3b12353 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionTransitivePagingIT.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionTransitivePagingIT.java
@@ -163,7 +163,7 @@ public class IntersectionTransitivePagingIT{
                         returnedUUID );
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionUnionPagingIT.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionUnionPagingIT.java
 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionUnionPagingIT.java
index fc004e8..e8ee0b6 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionUnionPagingIT.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IntersectionUnionPagingIT.java
@@ -169,7 +169,7 @@ public class IntersectionUnionPagingIT {
                 newSets.remove( name );
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
index 7aabe6c..17db7f5 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/IteratingQueryIT.java
@@ -322,7 +322,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -391,7 +391,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -461,7 +461,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -575,7 +575,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -646,7 +646,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -767,7 +767,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.hasCursor() );
 
@@ -828,7 +828,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.hasCursor() );
 
@@ -888,7 +888,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.hasCursor() );
 
@@ -948,7 +948,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.hasCursor() );
 
@@ -1012,7 +1012,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.hasCursor() );
 
@@ -1076,7 +1076,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.hasCursor() );
 
@@ -1134,7 +1134,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -1240,7 +1240,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -1344,7 +1344,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 
@@ -1409,7 +1409,7 @@ public class IteratingQueryIT {
                 count++;
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/core/src/test/java/org/apache/usergrid/persistence/query/NotSubPropertyIT.java
----------------------------------------------------------------------
diff --git 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/NotSubPropertyIT.java
 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/NotSubPropertyIT.java
index 11e0f09..ff66f8e 100644
--- 
a/stack/core/src/test/java/org/apache/usergrid/persistence/query/NotSubPropertyIT.java
+++ 
b/stack/core/src/test/java/org/apache/usergrid/persistence/query/NotSubPropertyIT.java
@@ -163,7 +163,7 @@ public class NotSubPropertyIT {
                 assertEquals( "Not returned as excpected", expected, returned 
);
             }
 
-            query.setOffsetFromCursor( results.getCursor() );
+            query.setCursor( results.getCursor() );
         }
         while ( results.getCursor() != null );
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/ApplicationEntityIndex.java
----------------------------------------------------------------------
diff --git 
a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/ApplicationEntityIndex.java
 
b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/ApplicationEntityIndex.java
index e9374c4..f4f7bcd 100644
--- 
a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/ApplicationEntityIndex.java
+++ 
b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/ApplicationEntityIndex.java
@@ -39,12 +39,10 @@ public interface ApplicationEntityIndex {
      * @param searchTypes The search types to search
      * @param query The query to execute
      * @param limit The limit of values to return
+     * @param offset The offset to query on
      * @return
      */
     CandidateResults search( final SearchEdge searchEdge, final SearchTypes 
searchTypes, final String query,
-                             final int limit );
-
-    CandidateResults search( final SearchEdge searchEdge, final SearchTypes 
searchTypes, final String query,
                              final int limit, final int offset );
 
     /**

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/CandidateResults.java
----------------------------------------------------------------------
diff --git 
a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/CandidateResults.java
 
b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/CandidateResults.java
index 7409a55..1e63df1 100644
--- 
a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/CandidateResults.java
+++ 
b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/CandidateResults.java
@@ -42,13 +42,14 @@ public class CandidateResults implements 
Iterable<CandidateResult> {
 
     private final List<CandidateResult> candidates;
     private final Collection<SelectFieldMapping> getFieldMappings;
+    private final SearchEdge searchEdge;
 
 
-    public CandidateResults( List<CandidateResult> candidates,
-                             final Collection<SelectFieldMapping> 
getFieldMappings
-    ) {
+    public CandidateResults( List<CandidateResult> candidates, final 
Collection<SelectFieldMapping> getFieldMappings,
+                             final SearchEdge searchEdge ) {
         this.candidates = candidates;
         this.getFieldMappings = getFieldMappings;
+        this.searchEdge = searchEdge;
         offset = Optional.absent();
     }
 
@@ -90,6 +91,11 @@ public class CandidateResults implements 
Iterable<CandidateResult> {
     }
 
 
+    public SearchEdge getSearchEdge() {
+        return searchEdge;
+    }
+
+
     /**
      * Get the candidates
      * @return

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsApplicationEntityIndexImpl.java
----------------------------------------------------------------------
diff --git 
a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsApplicationEntityIndexImpl.java
 
b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsApplicationEntityIndexImpl.java
index 4b31bf0..2d4696a 100644
--- 
a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsApplicationEntityIndexImpl.java
+++ 
b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsApplicationEntityIndexImpl.java
@@ -20,15 +20,9 @@
 package org.apache.usergrid.persistence.index.impl;
 
 
-import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.concurrent.TimeUnit;
 
-import com.fasterxml.jackson.core.JsonFactory;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.dataformat.smile.SmileFactory;
 import org.elasticsearch.action.ActionListener;
 import org.elasticsearch.action.ListenableActionFuture;
 import org.elasticsearch.action.ShardOperationFailedException;
@@ -36,13 +30,11 @@ import 
org.elasticsearch.action.deletebyquery.DeleteByQueryResponse;
 import org.elasticsearch.action.deletebyquery.IndexDeleteByQueryResponse;
 import org.elasticsearch.action.search.SearchRequestBuilder;
 import org.elasticsearch.action.search.SearchResponse;
-import org.elasticsearch.action.search.SearchScrollRequestBuilder;
 import org.elasticsearch.index.query.QueryBuilder;
 import org.elasticsearch.index.query.QueryBuilders;
 import org.elasticsearch.index.query.TermQueryBuilder;
 import org.elasticsearch.search.SearchHit;
 import org.elasticsearch.search.SearchHits;
-import org.mortbay.util.ajax.JSON;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -57,7 +49,6 @@ import org.apache.usergrid.persistence.index.EntityIndexBatch;
 import org.apache.usergrid.persistence.index.IndexFig;
 import org.apache.usergrid.persistence.index.SearchEdge;
 import org.apache.usergrid.persistence.index.SearchTypes;
-import org.apache.usergrid.persistence.index.exceptions.QueryException;
 import org.apache.usergrid.persistence.index.query.ParsedQuery;
 import org.apache.usergrid.persistence.index.query.ParsedQueryBuilder;
 import org.apache.usergrid.persistence.index.utils.IndexValidationUtils;
@@ -144,12 +135,6 @@ public class EsApplicationEntityIndexImpl implements 
ApplicationEntityIndex {
         return batch;
     }
 
-    @Override
-    public CandidateResults search( final SearchEdge searchEdge, final 
SearchTypes searchTypes, final String query,
-                                    final int limit ) {
-        return search(searchEdge, searchTypes, query, limit, 0);
-    }
-
     public CandidateResults search( final SearchEdge searchEdge, final 
SearchTypes searchTypes, final String query,
                                     final int limit, final int offset ) {
 
@@ -184,7 +169,7 @@ public class EsApplicationEntityIndexImpl implements 
ApplicationEntityIndex {
         }
         failureMonitor.success();
 
-        return parseResults(searchResponse, parsedQuery, limit, offset);
+        return parseResults(searchResponse, parsedQuery, searchEdge, limit, 
offset);
     }
 
 
@@ -242,7 +227,7 @@ public class EsApplicationEntityIndexImpl implements 
ApplicationEntityIndex {
     /**
      * Parse the results and return the canddiate results
      */
-    private CandidateResults parseResults( final SearchResponse 
searchResponse, final ParsedQuery query,
+    private CandidateResults parseResults( final SearchResponse 
searchResponse, final ParsedQuery query, final SearchEdge searchEdge,
                                            final int limit, final int from ) {
 
         final SearchHits searchHits = searchResponse.getHits();
@@ -259,7 +244,8 @@ public class EsApplicationEntityIndexImpl implements 
ApplicationEntityIndex {
             candidates.add( candidateResult );
         }
 
-        final CandidateResults candidateResults = new CandidateResults( 
candidates, query.getSelectFieldMappings());
+        final CandidateResults candidateResults = new CandidateResults( 
candidates, query.getSelectFieldMappings(),
+            searchEdge );
 
         // >= seems odd.  However if we get an overflow, we need to account 
for it.
         if (  hits.length >= limit ) {

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/EntityIndexTest.java
----------------------------------------------------------------------
diff --git 
a/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/EntityIndexTest.java
 
b/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/EntityIndexTest.java
index 3f23c11..fee5917 100644
--- 
a/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/EntityIndexTest.java
+++ 
b/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/EntityIndexTest.java
@@ -159,7 +159,7 @@ public class EntityIndexTest extends BaseIT {
         StopWatch timer = new StopWatch();
         timer.start();
         CandidateResults candidateResults =
-            entityIndex.search( indexEdge, searchTypes, "select * where 
testfield = 'test' order by ordinal", 100 );
+            entityIndex.search( indexEdge, searchTypes, "select * where 
testfield = 'test' order by ordinal", 100, 0 );
 
         timer.stop();
 
@@ -391,7 +391,7 @@ public class EntityIndexTest extends BaseIT {
         ei.refreshAsync().toBlocking().last();
 
         CandidateResults candidateResults = entityIndex
-            .search( searchEdge, SearchTypes.fromTypes( 
entity.getId().getType() ), "name contains 'Ferrari*'", 10 );
+            .search( searchEdge, SearchTypes.fromTypes( 
entity.getId().getType() ), "name contains 'Ferrari*'", 10, 0 );
         assertEquals( 1, candidateResults.size() );
 
         EntityIndexBatch batch = entityIndex.createBatch();
@@ -400,7 +400,7 @@ public class EntityIndexTest extends BaseIT {
         ei.refreshAsync().toBlocking().last();
 
         candidateResults = entityIndex
-            .search( searchEdge, SearchTypes.fromTypes( 
entity.getId().getType() ), "name contains 'Ferrari*'", 10 );
+            .search( searchEdge, SearchTypes.fromTypes( 
entity.getId().getType() ), "name contains 'Ferrari*'", 10, 0 );
         assertEquals( 0, candidateResults.size() );
     }
 
@@ -411,7 +411,7 @@ public class EntityIndexTest extends BaseIT {
 
         StopWatch timer = new StopWatch();
         timer.start();
-        CandidateResults candidateResults  = entityIndex.search( scope, 
searchTypes, queryString, num + 1 );
+        CandidateResults candidateResults  = entityIndex.search( scope, 
searchTypes, queryString, num + 1, 0 );
 
         timer.stop();
 
@@ -530,7 +530,7 @@ public class EntityIndexTest extends BaseIT {
 
         final String query = "where username = 'edanuff'";
 
-        CandidateResults r = entityIndex.search( indexSCope, 
SearchTypes.fromTypes( "edanuff" ), query, 10 );
+        CandidateResults r = entityIndex.search( indexSCope, 
SearchTypes.fromTypes( "edanuff" ), query, 10, 0 );
         assertEquals( user.getId(), r.get( 0 ).getId() );
 
         batch.deindex( indexSCope, user.getId(), user.getVersion() );
@@ -540,7 +540,7 @@ public class EntityIndexTest extends BaseIT {
         // EntityRef
 
 
-        r = entityIndex.search( indexSCope, SearchTypes.fromTypes( "edanuff" 
), query, 10 );
+        r = entityIndex.search( indexSCope, SearchTypes.fromTypes( "edanuff" 
), query, 10, 0 );
 
         assertFalse( r.iterator().hasNext() );
     }
@@ -601,16 +601,16 @@ public class EntityIndexTest extends BaseIT {
         final SearchTypes searchTypes = SearchTypes.fromTypes( "user" );
 
 
-        CandidateResults r = entityIndex.search( indexScope, searchTypes, 
"where username = 'bill'", 10 );
+        CandidateResults r = entityIndex.search( indexScope, searchTypes, 
"where username = 'bill'", 10, 0 );
         assertEquals( bill.getId(), r.get( 0 ).getId() );
 
-        r = entityIndex.search( indexScope, searchTypes, "where username = 
'fred'", 10 );
+        r = entityIndex.search( indexScope, searchTypes, "where username = 
'fred'", 10, 0 );
         assertEquals( fred.getId(), r.get( 0 ).getId() );
 
-        r = entityIndex.search( indexScope, searchTypes, "where age = 41", 10 
);
+        r = entityIndex.search( indexScope, searchTypes, "where age = 41", 10, 
0 );
         assertEquals( fred.getId(), r.get( 0 ).getId() );
 
-        r = entityIndex.search( indexScope, searchTypes, "where age = 
'thirtysomething'", 10 );
+        r = entityIndex.search( indexScope, searchTypes, "where age = 
'thirtysomething'", 10, 0 );
         assertEquals( bill.getId(), r.get( 0 ).getId() );
     }
 
@@ -693,7 +693,7 @@ public class EntityIndexTest extends BaseIT {
         int i ;
         for ( i=0; i < expectedPages; i++ ) {
             final CandidateResults results = !offset.isPresent()
-                ? entityIndex.search( indexEdge, SearchTypes.allTypes(), 
query, limit )
+                ? entityIndex.search( indexEdge, SearchTypes.allTypes(), 
query, limit, 0 )
                 : entityIndex.search(indexEdge, SearchTypes.allTypes(), query, 
limit, i * limit);
 
             assertEquals(limit, results.size());
@@ -749,7 +749,7 @@ public class EntityIndexTest extends BaseIT {
         final String query = "where searchUUID = " + searchUUID;
 
         final CandidateResults r =
-            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
entityId.getType() ), query, 10 );
+            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
entityId.getType() ), query, 10, 0 );
         assertEquals( user.getId(), r.get( 0 ).getId() );
     }
 
@@ -788,7 +788,7 @@ public class EntityIndexTest extends BaseIT {
         final String query = "where string = 'I am*'";
 
         final CandidateResults r =
-            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
entityId.getType() ), query, 10 );
+            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
entityId.getType() ), query, 10 , 0);
 
         assertEquals(user.getId(), r.get(0).getId() );
 
@@ -796,7 +796,7 @@ public class EntityIndexTest extends BaseIT {
         final String queryNoWildCard = "where string = 'I am'";
 
         final CandidateResults noWildCardResults =
-            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
entityId.getType() ), queryNoWildCard, 10 );
+            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
entityId.getType() ), queryNoWildCard, 10, 0 );
 
         assertEquals( 0, noWildCardResults.size() );
     }
@@ -846,7 +846,7 @@ public class EntityIndexTest extends BaseIT {
         final String ascQuery = "order by string";
 
         final CandidateResults ascResults =
-            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
first.getId().getType() ), ascQuery, 10 );
+            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
first.getId().getType() ), ascQuery, 10 , 0);
 
 
         assertEquals( first.getId(), ascResults.get( 0 ).getId() );
@@ -857,7 +857,7 @@ public class EntityIndexTest extends BaseIT {
         final String descQuery = "order by string desc";
 
         final CandidateResults descResults =
-            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
first.getId().getType() ), descQuery, 10 );
+            entityIndex.search( indexSCope, SearchTypes.fromTypes( 
first.getId().getType() ), descQuery, 10 , 0);
 
 
         assertEquals( second.getId(), descResults.get( 0 ).getId() );
@@ -911,7 +911,7 @@ public class EntityIndexTest extends BaseIT {
         final String singleMatchQuery = "string contains 'alpha' OR string 
contains 'foo'";
 
         final CandidateResults singleResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), singleMatchQuery, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), singleMatchQuery, 10, 0 );
 
 
         assertEquals( 1, singleResults.size() );
@@ -922,7 +922,7 @@ public class EntityIndexTest extends BaseIT {
         final String bothKeywordsMatch = "string contains 'alpha' OR string 
contains 'bravo'";
 
         final CandidateResults singleKeywordUnion =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), bothKeywordsMatch, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), bothKeywordsMatch, 10 , 0);
 
 
         assertEquals( 2, singleKeywordUnion.size() );
@@ -933,7 +933,7 @@ public class EntityIndexTest extends BaseIT {
         final String twoKeywordMatches = "string contains 'alpha' OR string 
contains 'long'";
 
         final CandidateResults towMatchResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), twoKeywordMatches, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), twoKeywordMatches, 10, 0 );
 
 
         assertEquals( 2, towMatchResults.size() );
@@ -992,7 +992,7 @@ public class EntityIndexTest extends BaseIT {
         final String notFirst = "NOT int = 1";
 
         final CandidateResults notFirstResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirst, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirst, 10, 0 );
 
 
         assertEquals( 1, notFirstResults.size() );
@@ -1003,7 +1003,7 @@ public class EntityIndexTest extends BaseIT {
         final String notSecond = "NOT int = 2";
 
         final CandidateResults notSecondUnion =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecond, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecond, 10, 0 );
 
 
         assertEquals( 1, notSecondUnion.size() );
@@ -1013,7 +1013,7 @@ public class EntityIndexTest extends BaseIT {
         final String notBothReturn = "NOT int = 3";
 
         final CandidateResults notBothReturnResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notBothReturn, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notBothReturn, 10, 0 );
 
 
         assertEquals( 2, notBothReturnResults.size() );
@@ -1024,7 +1024,7 @@ public class EntityIndexTest extends BaseIT {
         final String notFilterBoth = "(NOT int = 1) AND (NOT int = 2) ";
 
         final CandidateResults filterBoth =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFilterBoth, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFilterBoth, 10, 0 );
 
 
         assertEquals( 0, filterBoth.size() );
@@ -1032,7 +1032,7 @@ public class EntityIndexTest extends BaseIT {
         final String noMatchesAnd = "(NOT int = 3) AND (NOT int = 4)";
 
         final CandidateResults noMatchesAndResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesAnd, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesAnd, 10, 0 );
 
 
         assertEquals( 2, noMatchesAndResults.size() );
@@ -1043,7 +1043,7 @@ public class EntityIndexTest extends BaseIT {
         final String noMatchesOr = "(NOT int = 3) AND (NOT int = 4)";
 
         final CandidateResults noMatchesOrResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesOr, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesOr, 10, 0 );
 
 
         assertEquals( 2, noMatchesOrResults.size() );
@@ -1102,7 +1102,7 @@ public class EntityIndexTest extends BaseIT {
         final String notFirst = "NOT string = 'I ate a sammich'";
 
         final CandidateResults notFirstResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirst, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirst, 10, 0 );
 
 
         assertEquals( 1, notFirstResults.size() );
@@ -1112,7 +1112,7 @@ public class EntityIndexTest extends BaseIT {
         final String notFirstWildCard = "NOT string = 'I ate*'";
 
         final CandidateResults notFirstWildCardResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirstWildCard, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirstWildCard, 10, 0 );
 
 
         assertEquals( 1, notFirstWildCardResults.size() );
@@ -1122,7 +1122,7 @@ public class EntityIndexTest extends BaseIT {
         final String notFirstContains = "NOT string contains 'sammich'";
 
         final CandidateResults notFirstContainsResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirstContains, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFirstContains, 10 , 0);
 
 
         assertEquals( 1, notFirstContainsResults.size() );
@@ -1133,7 +1133,7 @@ public class EntityIndexTest extends BaseIT {
         final String notSecond = "NOT string = 'I drank a beer'";
 
         final CandidateResults notSecondUnion =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecond, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecond, 10, 0 );
 
 
         assertEquals( 1, notSecondUnion.size() );
@@ -1143,7 +1143,7 @@ public class EntityIndexTest extends BaseIT {
         final String notSecondWildcard = "NOT string = 'I drank*'";
 
         final CandidateResults notSecondWildcardUnion =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecondWildcard, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecondWildcard, 10, 0 );
 
 
         assertEquals( 1, notSecondWildcardUnion.size() );
@@ -1153,7 +1153,7 @@ public class EntityIndexTest extends BaseIT {
         final String notSecondContains = "NOT string contains 'beer'";
 
         final CandidateResults notSecondContainsUnion =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecondContains, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notSecondContains, 10, 0 );
 
 
         assertEquals( 1, notSecondContainsUnion.size() );
@@ -1163,7 +1163,7 @@ public class EntityIndexTest extends BaseIT {
         final String notBothReturn = "NOT string = 'I'm a foodie'";
 
         final CandidateResults notBothReturnResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notBothReturn, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notBothReturn, 10, 0 );
 
 
         assertEquals( 2, notBothReturnResults.size() );
@@ -1174,7 +1174,7 @@ public class EntityIndexTest extends BaseIT {
         final String notFilterBoth = "(NOT string = 'I ate a sammich') AND 
(NOT string = 'I drank a beer') ";
 
         final CandidateResults filterBoth =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFilterBoth, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), notFilterBoth, 10, 0 );
 
 
         assertEquals( 0, filterBoth.size() );
@@ -1182,7 +1182,7 @@ public class EntityIndexTest extends BaseIT {
         final String noMatchesAnd = "(NOT string = 'I ate*') AND (NOT string = 
'I drank*')";
 
         final CandidateResults noMatchesAndResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesAnd, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesAnd, 10, 0 );
 
 
         assertEquals( 0, noMatchesAndResults.size() );
@@ -1190,7 +1190,7 @@ public class EntityIndexTest extends BaseIT {
         final String noMatchesContainsAnd = "(NOT string contains 'ate') AND 
(NOT string contains 'drank')";
 
         final CandidateResults noMatchesContainsAndResults = entityIndex
-            .search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesContainsAnd, 10 );
+            .search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesContainsAnd, 10, 0 );
 
 
         assertEquals( 0, noMatchesContainsAndResults.size() );
@@ -1199,7 +1199,7 @@ public class EntityIndexTest extends BaseIT {
         final String noMatchesOr = "(NOT string = 'I ate*') AND (NOT string = 
'I drank*')";
 
         final CandidateResults noMatchesOrResults =
-            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesOr, 10 );
+            entityIndex.search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesOr, 10, 0 );
 
 
         assertEquals( 0, noMatchesOrResults.size() );
@@ -1207,7 +1207,7 @@ public class EntityIndexTest extends BaseIT {
         final String noMatchesContainsOr = "(NOT string contains 'ate') AND 
(NOT string contains 'drank')";
 
         final CandidateResults noMatchesContainsOrResults = entityIndex
-            .search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesContainsOr, 10 );
+            .search( indexScope1, SearchTypes.fromTypes( 
first.getId().getType() ), noMatchesContainsOr, 10, 0 );
 
 
         assertEquals( 0, noMatchesContainsOrResults.size() );

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/GeoPagingTest.java
----------------------------------------------------------------------
diff --git 
a/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/GeoPagingTest.java
 
b/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/GeoPagingTest.java
index 25bc48c..25961b8 100644
--- 
a/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/GeoPagingTest.java
+++ 
b/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/GeoPagingTest.java
@@ -143,7 +143,7 @@ public class GeoPagingTest extends BaseIT {
         final String query =  "select * where location within 1500000 of 37, 
-75" ;
 
         final CandidateResults
-                candidates = applicationEntityIndex.search( edge, 
SearchTypes.fromTypes( "cat" ), query, 100 );
+                candidates = applicationEntityIndex.search( edge, 
SearchTypes.fromTypes( "cat" ), query, 100, 0 );
 
         assertNotNull( candidates );
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/b5e60e04/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/IndexLoadTestsIT.java
----------------------------------------------------------------------
diff --git 
a/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/IndexLoadTestsIT.java
 
b/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/IndexLoadTestsIT.java
index a074a0a..812e756 100644
--- 
a/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/IndexLoadTestsIT.java
+++ 
b/stack/corepersistence/queryindex/src/test/java/org/apache/usergrid/persistence/index/impl/IndexLoadTestsIT.java
@@ -209,7 +209,7 @@ public class IndexLoadTestsIT extends BaseIT {
                             .search( searchEdge, SearchTypes.fromTypes( 
searchEdge.getEdgeName() ),
                                 "select * where " + FIELD_WORKER_INDEX + "  = 
" + workerIndex + " AND " + FIELD_ORDINAL
                                     + " = " + ordinal + " AND " + 
FIELD_UNIQUE_IDENTIFIER + " = '" + uniqueIdentifier
-                                    + "'" , 100 );
+                                    + "'" , 100 , 0);
 
                         queryTps.mark();
                         queryTimerContext.stop();

Reply via email to