Author: reschke
Date: Fri Mar 21 16:25:41 2014
New Revision: 1579973
URL: http://svn.apache.org/r1579973
Log:
OAK-1585 - rollback logic issues incorrect Updates
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java?rev=1579973&r1=1579972&r2=1579973&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java
Fri Mar 21 16:25:41 2014
@@ -419,16 +419,16 @@ public class Commit {
DocumentStore store = nodeStore.getDocumentStore();
for (UpdateOp op : changed) {
UpdateOp reverse = op.getReverseOperation();
- store.createOrUpdate(NODES, reverse);
+ store.findAndUpdate(NODES, reverse);
}
for (UpdateOp op : newDocuments) {
UpdateOp reverse = op.getReverseOperation();
NodeDocument.unsetLastRev(reverse, revision.getClusterId());
- store.createOrUpdate(NODES, reverse);
+ store.findAndUpdate(NODES, reverse);
}
UpdateOp removeCollision = new UpdateOp(commitRoot.getId(), false);
NodeDocument.removeCollision(removeCollision, revision);
- store.createOrUpdate(NODES, removeCollision);
+ store.findAndUpdate(NODES, removeCollision);
}
/**