Author: mreutegg Date: Wed Dec 13 07:19:04 2017 New Revision: 1817977 URL: http://svn.apache.org/viewvc?rev=1817977&view=rev Log: OAK-7053: Commit fails even though change made it to the DocumentStore
Modified: jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/CommitRootUpdateTest.java Modified: jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java?rev=1817977&r1=1817976&r2=1817977&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java (original) +++ jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/Commit.java Wed Dec 13 07:19:04 2017 @@ -396,7 +396,7 @@ public class Commit { createOrUpdateNode(store, commitRoot); } } - } catch (DocumentStoreException e) { + } catch (Exception e) { // OAK-3084 do not roll back if already committed if (success) { LOG.error("Exception occurred after commit. Rollback will be suppressed.", e); @@ -409,7 +409,7 @@ public class Commit { // and throw the original exception LOG.warn("Rollback failed", ex); } - throw e; + throw DocumentStoreException.convert(e); } } finally { if (success) { @@ -448,7 +448,7 @@ public class Commit { NodeDocument.setRevision(commit, revision, commitValue); // make the update conditional on the modCount commit.equals(MOD_COUNT, doc.getModCount()); - NodeDocument before = store.findAndUpdate(NODES, commit); + NodeDocument before = nodeStore.updateCommitRoot(commit, revision); if (before != null) { checkSplitCandidate(before); } Modified: jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/CommitRootUpdateTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/CommitRootUpdateTest.java?rev=1817977&r1=1817976&r2=1817977&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/CommitRootUpdateTest.java (original) +++ jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/CommitRootUpdateTest.java Wed Dec 13 07:19:04 2017 @@ -27,7 +27,6 @@ import org.apache.jackrabbit.oak.spi.com import org.apache.jackrabbit.oak.spi.state.NodeBuilder; import org.apache.jackrabbit.oak.spi.state.NodeState; import org.apache.jackrabbit.oak.spi.state.NodeStore; -import org.junit.Ignore; import org.junit.Rule; import org.junit.Test; @@ -101,7 +100,6 @@ public class CommitRootUpdateTest { assertFalse(throwAfterUpdate.get()); } - @Ignore @Test public void exceptionOnSingleUpdate() throws Exception { final AtomicBoolean throwAfterUpdate = new AtomicBoolean(false);