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 "Damien Obrist (JIRA)" <ji...@apache.org> on 2014/09/29 12:52:33 UTC

[jira] [Created] (OAK-2149) Locks are not enforced

Damien Obrist created OAK-2149:
----------------------------------

             Summary: Locks are not enforced
                 Key: OAK-2149
                 URL: https://issues.apache.org/jira/browse/OAK-2149
             Project: Jackrabbit Oak
          Issue Type: Bug
          Components: core, jcr
    Affects Versions: 1.0.6
            Reporter: Damien Obrist


Locks are not enforced and do not prevent nodes from being modified by non-lock-owning sessions.

Consider following code excerpt:
{code:java}
Repository repo = ...
String path = "/some/node";

Session session1 = repo.login(new SimpleCredentials("A", "password".toCharArray()));
session1.getNode(path).addMixin("mix:lockable");
session1.save();
LockManager lockManager = session1.getWorkspace().getLockManager();
lockManager.lock(path, true, false, Long.MAX_VALUE, null);

Session session2 = repo.login(new SimpleCredentials("B", "password".toCharArray()));
session2.getNode(path).setProperty("foo", "bar");
session2.save();
{code}
User {{A}} puts a lock on {{/some/node}}. User {{B}} is still able to set a property on that node after it has been locked. Instead, this should throw a {{LockException}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)