[
https://issues.apache.org/jira/browse/OAK-1541?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13935436#comment-13935436
]
Tobias Bocanegra commented on OAK-1541:
---------------------------------------
the conflict is generated in
{{org.apache.jackrabbit.oak.spi.state.AbstractRebaseDiff#childNodeAdded}}:
{code}
public boolean childNodeAdded(String name, NodeState after) {
if (builder.hasChildNode(name)) {
NodeState other = builder.child(name).getNodeState();
addExistingNode(builder, name, other, after);
} else {
builder.setChildNode(name, after);
}
return true;
}
{code}
IMO, the merge should be smart and not conflict if the 2 added nodes are
identical.
> Concurrent creation of users chokes on intermediate paths
> ---------------------------------------------------------
>
> Key: OAK-1541
> URL: https://issues.apache.org/jira/browse/OAK-1541
> Project: Jackrabbit Oak
> Issue Type: Bug
> Reporter: Tobias Bocanegra
>
> The tests in
> {{org.apache.jackrabbit.oak.security.authentication.ldap.LdapLoginTestBase#testConcurrentLogin}}
> fail because of a conflict when creating the intermediate nodes, although
> they are identical for all concurrent updates.
> strange enough, the error is completely different:
> "Cannot create user/group: Intermediate folders must be of type
> rep:AuthorizableFolder."
> this is reported on the "addExistingNode" parent, because the User validator
> traverses up the following tree:
> "/rep:security/rep:authorizables/rep:users/:conflict/addExistingNode/u/us/user-5"
--
This message was sent by Atlassian JIRA
(v6.2#6252)