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 "angela (JIRA)" <ji...@apache.org> on 2015/01/21 16:19:34 UTC

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

     [ https://issues.apache.org/jira/browse/OAK-2149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated OAK-2149:
------------------------
    Issue Type: Sub-task  (was: Bug)
        Parent: OAK-1962

> Locks are not enforced
> ----------------------
>
>                 Key: OAK-2149
>                 URL: https://issues.apache.org/jira/browse/OAK-2149
>             Project: Jackrabbit Oak
>          Issue Type: Sub-task
>          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)