You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by Tudor Rogoz <ro...@adobe.com> on 2013/04/08 13:16:22 UTC

Exception when simultaneously 2 Jcr objects are created with the same db storage

Hi,

I get the bellow exception [0] when at least 2 JCRs are instantiated at the same time on different cluster nodes.Is this a bug, should be this situation managed or not?
I attached a test that can reproduce the scenario on a single non-cluster mongod instance.

Thanks,
Tudor





[0]

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system/oak:namedChildNodeDefinitions/jcr:versionStorage":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system/jcr:childNodeDefinition[3]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system/jcr:childNodeDefinition[6]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system/jcr:childNodeDefinition[5]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system/jcr:childNodeDefinition[4]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:system":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Authorizable/oak:residualChildNodeDefinitions/nt:base":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Authorizable/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Authorizable/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Authorizable":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Members/oak:residualChildNodeDefinitions/rep:Members":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Members/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Members/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Members":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:versionStorage/jcr:childNodeDefinition[2]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:versionStorage/oak:residualChildNodeDefinitions/rep:versionStorage":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:versionStorage/oak:residualChildNodeDefinitions/nt:versionHistory":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:versionStorage/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:versionStorage/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:versionStorage":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedPropertyDefinitions/oak:residualChildNodeDefinitions/oak:propertyDefinitions":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedPropertyDefinitions/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedPropertyDefinitions/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedPropertyDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:propertyDefinitions/oak:residualChildNodeDefinitions/nt:propertyDefinition":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:propertyDefinitions/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:propertyDefinitions/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:propertyDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:nodeTypes/oak:residualChildNodeDefinitions/nt:nodeType":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:nodeTypes/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:nodeTypes/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:nodeTypes":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:unstructured/oak:residualChildNodeDefinitions/nt:base":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:unstructured/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:unstructured/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:unstructured":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedChildNodeDefinitions/oak:residualChildNodeDefinitions/oak:childNodeDefinitions":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedChildNodeDefinitions/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedChildNodeDefinitions/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:version/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:version/oak:namedChildNodeDefinitions/jcr:frozenNode/nt:frozenNode":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:version/oak:namedChildNodeDefinitions/jcr:frozenNode":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:version/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:version":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:MergeConflict/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:MergeConflict/oak:namedChildNodeDefinitions/rep:ours/nt:unstructured":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:MergeConflict/oak:namedChildNodeDefinitions/rep:ours":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:MergeConflict/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:MergeConflict":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:RepoAccessControllable/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:RepoAccessControllable/oak:namedChildNodeDefinitions/rep:repoPolicy/rep:Policy":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:RepoAccessControllable/oak:namedChildNodeDefinitions/rep:repoPolicy":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:RepoAccessControllable/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:RepoAccessControllable":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PrincipalAccessControl/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PrincipalAccessControl/oak:namedChildNodeDefinitions/rep:policy/rep:Policy":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PrincipalAccessControl/oak:namedChildNodeDefinitions/rep:policy":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PrincipalAccessControl/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PrincipalAccessControl":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/jcr:childNodeDefinition[2]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/oak:namedChildNodeDefinitions/jcr:childNodeDefinition/nt:childNodeDefinition":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/oak:namedChildNodeDefinitions/jcr:childNodeDefinition":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/oak:namedChildNodeDefinitions/jcr:propertyDefinition/nt:propertyDefinition":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/oak:namedChildNodeDefinitions/jcr:propertyDefinition":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:nodeType":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:folder/oak:residualChildNodeDefinitions/nt:hierarchyNode":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:folder/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:folder/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:folder":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:root/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:root/oak:namedChildNodeDefinitions/jcr:system/rep:system":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:root/oak:namedChildNodeDefinitions/jcr:system":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:root/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:root":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACE/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACE/oak:namedChildNodeDefinitions/rep:restrictions/rep:Restrictions":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACE/oak:namedChildNodeDefinitions/rep:restrictions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACE/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACE":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PermissionStore/jcr:childNodeDefinition[2]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PermissionStore/oak:residualChildNodeDefinitions/rep:PermissionStore":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PermissionStore/oak:residualChildNodeDefinitions/rep:Permissions":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PermissionStore/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PermissionStore/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:PermissionStore":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/jcr:childNodeDefinition[2]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:residualChildNodeDefinitions/nt:version":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:namedChildNodeDefinitions/jcr:versionLabels/nt:versionLabels":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:namedChildNodeDefinitions/jcr:versionLabels":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:namedChildNodeDefinitions/jcr:rootVersion/nt:version":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:namedChildNodeDefinitions/jcr:rootVersion":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/oak:namedChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory/jcr:childNodeDefinition[3]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:versionHistory":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACL/oak:residualChildNodeDefinitions/rep:ACE":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACL/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACL/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:ACL":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:frozenNode/oak:residualChildNodeDefinitions/nt:base":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:frozenNode/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:frozenNode/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/nt:frozenNode":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Configurations/jcr:childNodeDefinition[2]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Configurations/oak:residualChildNodeDefinitions/rep:Configurations":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Configurations/oak:residualChildNodeDefinitions/nt:configuration":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Configurations/oak:residualChildNodeDefinitions":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Configurations/jcr:childNodeDefinition[1]":{"match":true}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes/rep:Configurations":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system/jcr:nodeTypes":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition/jcr:system":{}

+"/oak:index/nodetype/:index/nt%3AchildNodeDefinition":{}

+"/oak:index/nodetype/:index":{}

+"/oak:index/nodetype":{"jcr:primaryType":"nam:oak:queryIndexDefinition","propertyNames":["str:jcr:primaryType","str:jcr:mixinTypes"],"reindex":false,"type":"p2"}

+"/oak:index/uuid/:index":{}

+"/oak:index/uuid":{"jcr:primaryType":"nam:oak:queryIndexDefinition","propertyNames":["str:jcr:uuid"],"reindex":false,"type":"p2","unique":true}

+"/oak:index":{"jcr:primaryType":"nam:nt:unstructured"}

     at org.apache.jackrabbit.mongomk.prototype.Commit.applyToDocumentStore(Commit.java:237)

     at org.apache.jackrabbit.mongomk.prototype.Commit.applyToDocumentStore(Commit.java:136)

     at org.apache.jackrabbit.mongomk.prototype.Commit.apply(Commit.java:120)

     at org.apache.jackrabbit.mongomk.prototype.MongoMK.commit(MongoMK.java:892)

     at org.apache.jackrabbit.oak.kernel.KernelNodeStoreBranch.merge(KernelNodeStoreBranch.java:160)

     ... 7 more

Caused by: org.apache.jackrabbit.mk.api.MicroKernelException: The node / was changed in revision r505f18d001-3c4, which was applied after the base revision r505f18d000-242; before r505f198000-242; document {_commitRoot={ "r505f18d001-3c4" : 0}, _deleted={ "r505f18d000-242" : "false" , "r505f18d001-3c4" : "false"}, _id=0:/, _lastRev={ "964" : "r505f18d001-3c4"}, _revisions={ "r505f18d000-242" : "true" , "r505f18d001-3c4" : "true"}}

     at org.apache.jackrabbit.mongomk.prototype.Commit.createOrUpdateNode(Commit.java:276)

     at org.apache.jackrabbit.mongomk.prototype.Commit.applyToDocumentStore(Commit.java:230)

     ... 11 more

java.lang.RuntimeException: org.apache.jackrabbit.oak.api.CommitFailedException: org.apache.jackrabbit.mk.api.MicroKernelException: Exception committing +"/rep:security/rep:authorizables/rep:users/a/an/anonymous":{"jcr:primaryType":"nam:rep:User","jcr:uuid":"294de355-7d9d-30b3-92d8-a1e6aab028cf","rep:authorizableId":"anonymous","rep:principalName":"anonymous"}

+"/rep:security/rep:authorizables/rep:users/a/an":{"jcr:primaryType":"nam:rep:AuthorizableFolder"}

+"/rep:security/rep:authorizables/rep:users/a/ad/admin":{"jcr:primaryType":"nam:rep:User","jcr:uuid":"21232f29-7a57-35a7-8389-4a0e4a801fc3","rep:authorizableId":"admin","rep:password":"{SHA-256}74243e82795fc044-1000-62cebfb029032670ac4d972dda4f84471a08560d1faa5b0ece79de83f2cded00","rep:principalName":"admin"}

+"/rep:security/rep:authorizables/rep:users/a/ad":{"jcr:primaryType":"nam:rep:


Re: Exception when simultaneously 2 Jcr objects are created with the same db storage

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

On Mon, Apr 8, 2013 at 2:16 PM, Tudor Rogoz <ro...@adobe.com> wrote:
> I get the bellow exception [0] when at least 2 JCRs are instantiated at the
> same time on different cluster nodes.Is this a bug, should be this situation
> managed or not?

Looks like the two clients are trying to initialize the repository at
the same time, which correctly makes the second initialization fail
with a conflict.

I wouldn't worry too much about this scenario, as I don't expect such
concurrent initialization to be a common occurrence beyond test cases.
Normal deployments would more likely intialize the repository first
before starting multiple concurrent clients.

In fact it might even be a good idea to explicitly decouple repository
initialization from the construction of a ContentRepository object, as
that will help clear up the workflow in such cases. Alternatively we
could look at making the repository initialization code more robust
against concurrent use, for example by having it capture the conflict
exception and ignore it if someone else already managed to imitialize
the repository.

BR,

Jukka Zitting