You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2013/04/02 11:41:16 UTC

[jira] [Commented] (OAK-730) Oak instance fails with ConstraintViolationException on concurrent write

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

Thomas Mueller commented on OAK-730:
------------------------------------

To simplify configuration, I guess the clusterNodeId should be automatically generated. I created OAK-731 to track this.
                
> Oak instance fails with ConstraintViolationException on concurrent write
> ------------------------------------------------------------------------
>
>                 Key: OAK-730
>                 URL: https://issues.apache.org/jira/browse/OAK-730
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: jcr
>    Affects Versions: 0.7
>         Environment: Ubuntu 12.04
> Java 6 update 43
>            Reporter: Tudor Rogoz
>            Assignee: Marcel Reutegger
>         Attachments: ConcurrencyTest.java
>
>
> Reproduces on revision 1462232.
> I get this kind of exception on the majority of the oak instances when I'm trying to concurrently write into a mongod instance.
> {code}
> javax.jcr.nodetype.ConstraintViolationException
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> 	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
> 	at org.apache.jackrabbit.oak.api.CommitFailedException.throwRepositoryException(CommitFailedException.java:57)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:234)
> 	at org.apache.jackrabbit.oak.jcr.SessionImpl.save(SessionImpl.java:320)
> 	at org.apache.jackrabbit.oakmongomk.RepoWrite.run(ConstraintViolationExceptionTest.java:83)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.jackrabbit.oak.api.CommitFailedException: javax.jcr.nodetype.ConstraintViolationException: Incorrect node type of child node nodeZ442730
> 	at org.apache.jackrabbit.oak.plugins.nodetype.TypeEditor.constraintViolation(TypeEditor.java:158)
> 	at org.apache.jackrabbit.oak.plugins.nodetype.TypeEditor.getDefinition(TypeEditor.java:381)
> 	at org.apache.jackrabbit.oak.plugins.nodetype.TypeEditor.enter(TypeEditor.java:101)
> 	at org.apache.jackrabbit.oak.spi.commit.VisibleEditor.enter(VisibleEditor.java:58)
> 	at org.apache.jackrabbit.oak.spi.commit.CompositeEditor.enter(CompositeEditor.java:66)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.process(EditorHook.java:104)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.process(EditorHook.java:80)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.access$0(EditorHook.java:73)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.childNodeAdded(EditorHook.java:163)
> 	at org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:335)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.process(EditorHook.java:109)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.process(EditorHook.java:80)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.access$0(EditorHook.java:73)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.childNodeAdded(EditorHook.java:163)
> 	at org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:335)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.process(EditorHook.java:109)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.process(EditorHook.java:80)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.access$0(EditorHook.java:73)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.childNodeAdded(EditorHook.java:163)
> 	at org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:335)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.process(EditorHook.java:109)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.process(EditorHook.java:80)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.access$0(EditorHook.java:73)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.childNodeChanged(EditorHook.java:176)
> 	at org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:337)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook$EditorDiff.process(EditorHook.java:109)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.process(EditorHook.java:80)
> 	at org.apache.jackrabbit.oak.spi.commit.EditorHook.processCommit(EditorHook.java:54)
> 	at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:59)
> 	at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:59)
> 	at org.apache.jackrabbit.oak.kernel.KernelNodeStoreBranch.merge(KernelNodeStoreBranch.java:144)
> 	at org.apache.jackrabbit.oak.core.RootImpl$2.run(RootImpl.java:278)
> 	at org.apache.jackrabbit.oak.core.RootImpl$2.run(RootImpl.java:1)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.security.auth.Subject.doAs(Subject.java:337)
> 	at org.apache.jackrabbit.oak.core.RootImpl.commit(RootImpl.java:273)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:231)
> 	... 5 more
> Caused by: javax.jcr.nodetype.ConstraintViolationException: Incorrect node type of child node nodeZ442730
> 	at org.apache.jackrabbit.oak.plugins.nodetype.TypeEditor.constraintViolation(TypeEditor.java:159)
> 	... 41 more
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira