You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by sn...@apache.org on 2015/11/19 21:35:39 UTC
[1/7] usergrid git commit: Fix delete so that it doesn't return null
Repository: usergrid
Updated Branches:
refs/heads/release 9bc22410d -> 9bfbc531c
Fix delete so that it doesn't return null
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/88f6feae
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/88f6feae
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/88f6feae
Branch: refs/heads/release
Commit: 88f6feae8c8d635598954ee9a5d239eda42653bd
Parents: 9bc2241
Author: Michael Russo <mi...@gmail.com>
Authored: Thu Nov 19 09:43:36 2015 -0800
Committer: Michael Russo <mi...@gmail.com>
Committed: Thu Nov 19 09:43:36 2015 -0800
----------------------------------------------------------------------
.../asyncevents/EventBuilderImpl.java | 39 +++++++++-----------
1 file changed, 17 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/88f6feae/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
index d819f39..9b68c4c 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
@@ -125,42 +125,37 @@ public class EventBuilderImpl implements EventBuilder {
log.debug( "Deleting entity id from index in app scope {} with entityId {} }", applicationScope, entityId );
final EntityCollectionManager ecm = entityCollectionManagerFactory.createCollectionManager( applicationScope );
-
final GraphManager gm = graphManagerFactory.createEdgeManager( applicationScope );
+ //TODO USERGRID-1123: Implement so we don't iterate logs twice (latest DELETED version, then to get all DELETED)
- //TODO: change this to be an observable
- //so we get these versions and loop through them until we find the MvccLogEntry that is marked as delete.
- //TODO: evauluate this to possibly be an observable to pass to the nextmethod.
MvccLogEntry mostRecentlyMarked = ecm.getVersions( entityId ).toBlocking()
.firstOrDefault( null,
mvccLogEntry -> mvccLogEntry.getState() == MvccLogEntry.State.DELETED );
- //If there is nothing marked then we shouldn't return any results.
- //TODO: evaluate if we want to return null or return empty observable when we don't have any results marked as deleted.
- if(mostRecentlyMarked == null)
- return null;
+ // De-indexing and entity deletes don't check log entiries. We must do that first. If no DELETED logs, then
+ // return an empty observable as our no-op.
+ Observable<IndexOperationMessage> deIndexObservable = Observable.empty();
+ Observable<List<MvccLogEntry>> ecmDeleteObservable = Observable.empty();
- //observable of index operation messages
- //this method will need the most recent version.
- //When we go to compact the graph make sure you turn on the debugging mode for the deleted nodes so
- //we can verify that we mark them. That said that part seems kinda done. as we also delete the mvcc buffers.
- final Observable<IndexOperationMessage> edgeObservable =
- indexService.deleteEntityIndexes( applicationScope, entityId, mostRecentlyMarked.getVersion() );
+ if(mostRecentlyMarked != null){
+ deIndexObservable =
+ indexService.deleteEntityIndexes( applicationScope, entityId, mostRecentlyMarked.getVersion() );
+ ecmDeleteObservable =
+ ecm.getVersions( entityId )
+ .filter( mvccLogEntry-> mvccLogEntry.getState() == MvccLogEntry.State.DELETED)
+ .buffer( serializationFig.getBufferSize() )
+ .doOnNext( buffer -> ecm.delete( buffer ) );
- //TODO: not sure what we need the list of versions here when we search for the mark above
- //observable of entries as the batches are deleted
- final Observable<List<MvccLogEntry>> entries =
- ecm.getVersions( entityId ).buffer( serializationFig.getBufferSize() )
- .doOnNext( buffer -> ecm.delete( buffer ) );
+ }
- // observable of the edge delete from graph
- final Observable<Id> compactedNode = gm.compactNode(entityId);
+ // Graph compaction checks the versions inside compactNode, just build this up for the caller to subscribe to
+ final Observable<Id> graphCompactObservable = gm.compactNode(entityId);
- return new EntityDeleteResults( edgeObservable, entries, compactedNode );
+ return new EntityDeleteResults( deIndexObservable, ecmDeleteObservable, graphCompactObservable );
}
[7/7] usergrid git commit: formatting change only. This closes #442
Posted by sn...@apache.org.
formatting change only. This closes #442
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/9bfbc531
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/9bfbc531
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/9bfbc531
Branch: refs/heads/release
Commit: 9bfbc531c4e70eedaff435033512e0d48f8df25c
Parents: e5b9730
Author: Dave Johnson <sn...@apache.org>
Authored: Thu Nov 19 15:34:44 2015 -0500
Committer: Dave Johnson <sn...@apache.org>
Committed: Thu Nov 19 15:34:44 2015 -0500
----------------------------------------------------------------------
.../usergrid/persistence/model/entity/MapToEntityConverter.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/9bfbc531/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
index a225820..aff7439 100644
--- a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
+++ b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
@@ -47,7 +47,8 @@ public class MapToEntityConverter{
return fromMap( entity, map, null, null, topLevel );
}
- public Entity fromMap(final Entity entity,final Map<String, Object> map,final SchemaManager schemaManager, final String entityType, boolean topLevel) {
+ public Entity fromMap(final Entity entity,final Map<String, Object> map,final
+ SchemaManager schemaManager, final String entityType, boolean topLevel) {
for ( String fieldName : map.keySet() ) {
[3/7] usergrid git commit: Don't filter out properties that have name
of 'size'. The internal size prop is noted in our metadata object,
not at the root fields level.
Posted by sn...@apache.org.
Don't filter out properties that have name of 'size'. The internal size prop is noted in our metadata object, not at the root fields level.
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/aea92641
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/aea92641
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/aea92641
Branch: refs/heads/release
Commit: aea926411c29e57e6d65cd50cbacf921821b16e1
Parents: faa234a
Author: Michael Russo <mi...@gmail.com>
Authored: Thu Nov 19 11:07:55 2015 -0800
Committer: Michael Russo <mi...@gmail.com>
Committed: Thu Nov 19 11:07:55 2015 -0800
----------------------------------------------------------------------
.../usergrid/persistence/model/entity/MapToEntityConverter.java | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/aea92641/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
index 2357a57..a225820 100644
--- a/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
+++ b/stack/corepersistence/model/src/main/java/org/apache/usergrid/persistence/model/entity/MapToEntityConverter.java
@@ -50,9 +50,7 @@ public class MapToEntityConverter{
public Entity fromMap(final Entity entity,final Map<String, Object> map,final SchemaManager schemaManager, final String entityType, boolean topLevel) {
for ( String fieldName : map.keySet() ) {
- if(fieldName.equals("size")){
- continue;
- }
+
Object value = map.get( fieldName );
boolean unique = schemaManager == null ? topLevel : topLevel && schemaManager.isPropertyUnique(entityType, fieldName);
//cannot store fields that aren't locations
[6/7] usergrid git commit: format change only
Posted by sn...@apache.org.
format change only
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/e5b97304
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/e5b97304
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/e5b97304
Branch: refs/heads/release
Commit: e5b97304ebe2dcccce32ea18c7d7994130ca5738
Parents: be9bcb0
Author: Dave Johnson <sn...@apache.org>
Authored: Thu Nov 19 15:29:39 2015 -0500
Committer: Dave Johnson <sn...@apache.org>
Committed: Thu Nov 19 15:29:39 2015 -0500
----------------------------------------------------------------------
.../corepersistence/asyncevents/EventBuilderImpl.java | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/e5b97304/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
index 48df8d0..d624132 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
@@ -131,8 +131,7 @@ public class EventBuilderImpl implements EventBuilder {
//TODO USERGRID-1123: Implement so we don't iterate logs twice (latest DELETED version, then to get all DELETED)
MvccLogEntry mostRecentlyMarked = ecm.getVersions( entityId ).toBlocking()
- .firstOrDefault( null,
- mvccLogEntry -> mvccLogEntry.getState() == MvccLogEntry.State.DELETED );
+ .firstOrDefault( null, mvccLogEntry -> mvccLogEntry.getState() == MvccLogEntry.State.DELETED );
// De-indexing and entity deletes don't check log entiries. We must do that first. If no DELETED logs, then
// return an empty observable as our no-op.
@@ -145,14 +144,12 @@ public class EventBuilderImpl implements EventBuilder {
ecmDeleteObservable =
ecm.getVersions( entityId )
- .filter( mvccLogEntry-> UUIDUtils.compare(mvccLogEntry.getVersion(), mostRecentlyMarked.getVersion()) <= 0)
+ .filter( mvccLogEntry->
+ UUIDUtils.compare(mvccLogEntry.getVersion(), mostRecentlyMarked.getVersion()) <= 0)
.buffer( serializationFig.getBufferSize() )
.doOnNext( buffer -> ecm.delete( buffer ) );
-
-
}
-
// Graph compaction checks the versions inside compactNode, just build this up for the caller to subscribe to
final Observable<Id> graphCompactObservable = gm.compactNode(entityId);
[5/7] usergrid git commit: Fix it to be <=
Posted by sn...@apache.org.
Fix it to be <=
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/be9bcb0b
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/be9bcb0b
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/be9bcb0b
Branch: refs/heads/release
Commit: be9bcb0b3f84f2ba09db22f7ea25c42762a44ddd
Parents: 1b1ed8b
Author: Michael Russo <mi...@gmail.com>
Authored: Thu Nov 19 12:23:44 2015 -0800
Committer: Michael Russo <mi...@gmail.com>
Committed: Thu Nov 19 12:23:44 2015 -0800
----------------------------------------------------------------------
.../usergrid/corepersistence/asyncevents/EventBuilderImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/be9bcb0b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
index c9ae6da..48df8d0 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
@@ -145,7 +145,7 @@ public class EventBuilderImpl implements EventBuilder {
ecmDeleteObservable =
ecm.getVersions( entityId )
- .filter( mvccLogEntry-> UUIDUtils.compare(mvccLogEntry.getVersion(), mostRecentlyMarked.getVersion()) < 0)
+ .filter( mvccLogEntry-> UUIDUtils.compare(mvccLogEntry.getVersion(), mostRecentlyMarked.getVersion()) <= 0)
.buffer( serializationFig.getBufferSize() )
.doOnNext( buffer -> ecm.delete( buffer ) );
[4/7] usergrid git commit: Use UUID compare for more precision.
Posted by sn...@apache.org.
Use UUID compare for more precision.
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/1b1ed8b6
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/1b1ed8b6
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/1b1ed8b6
Branch: refs/heads/release
Commit: 1b1ed8b63bbfd3c5fcf6f0e4a09f2009e8709d53
Parents: aea9264
Author: Michael Russo <mi...@gmail.com>
Authored: Thu Nov 19 12:21:48 2015 -0800
Committer: Michael Russo <mi...@gmail.com>
Committed: Thu Nov 19 12:21:48 2015 -0800
----------------------------------------------------------------------
.../usergrid/corepersistence/asyncevents/EventBuilderImpl.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/1b1ed8b6/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
index f7f7ba3..c9ae6da 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
@@ -22,6 +22,7 @@ package org.apache.usergrid.corepersistence.asyncevents;
import java.util.List;
+import org.apache.usergrid.utils.UUIDUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -144,7 +145,7 @@ public class EventBuilderImpl implements EventBuilder {
ecmDeleteObservable =
ecm.getVersions( entityId )
- .filter( mvccLogEntry-> mvccLogEntry.getVersion().timestamp() <= mostRecentlyMarked.getVersion().timestamp())
+ .filter( mvccLogEntry-> UUIDUtils.compare(mvccLogEntry.getVersion(), mostRecentlyMarked.getVersion()) < 0)
.buffer( serializationFig.getBufferSize() )
.doOnNext( buffer -> ecm.delete( buffer ) );
[2/7] usergrid git commit: Update filter to allow removal of all
entities older than the last marked version.
Posted by sn...@apache.org.
Update filter to allow removal of all entities older than the last marked version.
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/faa234a8
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/faa234a8
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/faa234a8
Branch: refs/heads/release
Commit: faa234a85f1526a17a6f7d3049a7cb0820816190
Parents: 88f6fea
Author: Michael Russo <mi...@gmail.com>
Authored: Thu Nov 19 10:51:22 2015 -0800
Committer: Michael Russo <mi...@gmail.com>
Committed: Thu Nov 19 10:51:22 2015 -0800
----------------------------------------------------------------------
.../usergrid/corepersistence/asyncevents/EventBuilderImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/faa234a8/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
index 9b68c4c..f7f7ba3 100644
--- a/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
+++ b/stack/core/src/main/java/org/apache/usergrid/corepersistence/asyncevents/EventBuilderImpl.java
@@ -144,7 +144,7 @@ public class EventBuilderImpl implements EventBuilder {
ecmDeleteObservable =
ecm.getVersions( entityId )
- .filter( mvccLogEntry-> mvccLogEntry.getState() == MvccLogEntry.State.DELETED)
+ .filter( mvccLogEntry-> mvccLogEntry.getVersion().timestamp() <= mostRecentlyMarked.getVersion().timestamp())
.buffer( serializationFig.getBufferSize() )
.doOnNext( buffer -> ecm.delete( buffer ) );