jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "zhouxu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-8221) Failure to do anything,throw CommitFailedException: OakMerge0004
Date Fri, 12 Apr 2019 07:15:00 GMT

    [ https://issues.apache.org/jira/browse/OAK-8221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16816032#comment-16816032
] 

zhouxu commented on OAK-8221:
-----------------------------

we can schedule revision garbage collection every night。

Is there an example of how to configure DocumentNodeStore for production environments? Is
there an open source system using oak? We can refer to it.

> Failure to do anything,throw CommitFailedException: OakMerge0004
> ----------------------------------------------------------------
>
>                 Key: OAK-8221
>                 URL: https://issues.apache.org/jira/browse/OAK-8221
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: core
>            Reporter: zhouxu
>            Priority: Major
>
> Hello expert:
>   1. To use Oak in my project simply add a dependency to {{org.apache.jackrabbit:oak-jcr:1.10.2}} and
to {{javax.jcr:jcr:2.0。}}
>   2. we construct a Repository instance,use mongodb like this:
>      MongoClient  mongoClient=getMongoClient(mongodbIP,mongodbPort,dbName,userName,password);
>      DocumentNodeStore documentNodeStore = newMongoDocumentNodeStoreBuilder()
>      .setMongoDB(mongoClient, dbName, 0)
>      .setBlobStore(new FileBlobStore("D:\\amberdata\\FileStore"))
>       .build();
>     Repository repository = new Jcr(new Oak(documentNodeStore)).createRepository();
>  3.Every developer uses the oak of a local application to connect to the same mongodb,
> A few days later,We failed to unregister node type dw_unit_detail which we registered,it
takes a long time,and throw CommitFailedException: OakMerge0004,like this:
>     javax.jcr.InvalidItemStateException: Failed to unregister node type dw_unit_detail
> at org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:240)
>  at org.apache.jackrabbit.oak.plugins.nodetype.write.ReadWriteNodeTypeManager.unregisterNodeType(ReadWriteNodeTypeManager.java:186)
>  at com.datamber.afc.domain.type.AfType.destroy(AfType.java:397)
>  at com.datamber.afc.domain.type.AfTypeTest.destroy(AfTypeTest.java:345)
>  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>  at java.lang.reflect.Method.invoke(Method.java:498)
>  at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>  at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>  at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>  at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>  at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
>  at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>  at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
>  at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
>  at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
>  at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>  at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>  at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>  at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>  at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>  at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>  at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
>  at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
>  at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
>  at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
>  at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
> Caused by: org.apache.jackrabbit.oak.api.CommitFailedException: OakMerge0004: OakMerge0004:
Following exceptions occurred during the bulk update operations: [org.apache.jackrabbit.oak.plugins.document.ConflictException:
The node 3:/jcr:system/jcr:nodeTypes/dw_customize_type was changed in revision
> r16a0699ff58-0-3 (not yet visible), which was applied after the base revision
> r16a0b08f9b6-0-1,r16a067a0c76-0-2,r16a0699faf1-0-3,r16a072d9ee8-0-4,r16a069a45a1-0-5,r16a06874e87-0-6,r16a069be50a-0-7,r16a073313ba-0-8,r16a073e63ae-0-9,r16a0769307d-0-a,r16a0ae97b21-0-b,r16a0a0b1912-0-c,r16a0a0fa4e7-0-d,r16a0a4bbc67-0-e,r16a0a4438fc-0-f,r16a0ae19945-0-10,
before
> r16a0b099334-0-1] (retries 5, 303136 ms)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:218)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge(DocumentNodeStoreBranch.java:127)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentRootBuilder.merge(DocumentRootBuilder.java:170)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore.merge(DocumentNodeStore.java:1848)
>  at org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:250)
>  at org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:261)
>  at org.apache.jackrabbit.oak.plugins.nodetype.write.ReadWriteNodeTypeManager.unregisterNodeType(ReadWriteNodeTypeManager.java:182)
>  ... 26 more
> Caused by: org.apache.jackrabbit.oak.plugins.document.ConflictException: Following exceptions
occurred during the bulk update operations: [org.apache.jackrabbit.oak.plugins.document.ConflictException:
The node 3:/jcr:system/jcr:nodeTypes/dw_customize_type was changed in revision
> r16a0699ff58-0-3 (not yet visible), which was applied after the base revision
> r16a0b08f9b6-0-1,r16a067a0c76-0-2,r16a0699faf1-0-3,r16a072d9ee8-0-4,r16a069a45a1-0-5,r16a06874e87-0-6,r16a069be50a-0-7,r16a073313ba-0-8,r16a073e63ae-0-9,r16a0769307d-0-a,r16a0ae97b21-0-b,r16a0a0b1912-0-c,r16a0a0fa4e7-0-d,r16a0a4bbc67-0-e,r16a0a4438fc-0-f,r16a0ae19945-0-10,
before
> r16a0b099334-0-1]
>  at org.apache.jackrabbit.oak.plugins.document.Commit.checkConflicts(Commit.java:632)
>  at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:333)
>  at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:252)
>  at org.apache.jackrabbit.oak.plugins.document.Commit.applyInternal(Commit.java:220)
>  at org.apache.jackrabbit.oak.plugins.document.Commit.apply(Commit.java:208)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:310)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:275)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.access$500(DocumentNodeStoreBranch.java:55)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:531)
>  at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:194)
>  ... 32 more



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message