[dna-issues] [JBoss JIRA] Updated: (DNA-457) Add JSR-170 Locking Optional Feature

Brian Carothers (JIRA) jira-events at lists.jboss.org
Fri Jul 3 16:59:03 EDT 2009


     [ https://jira.jboss.org/jira/browse/DNA-457?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brian Carothers updated DNA-457:
--------------------------------

    Attachment: DNA-457_WIP.patch


Took a stab at locking.  It's not there yet, although it does pass all of the optional locking tests (and breaks a few of the other TCK tests).

In the patch:
- A repository-level map of workspace names to lock managers for the workspace
- A WorkspaceLockManager class that maintains an in-memory map of locked node UUIDs to locks and keeps that synchronized with a new system view at /jcr:system/dna:locks.
- A new system view at /jcr:system/dna:locks that contains a child node for each live lock.  
- Integration between the lock methods on AbstractJcrNode and JcrSession and the WorkspaceLockManager

Not in the patch:
- A consistency checker that flushes some or all of the locks at startup or checks the state of /jcr:system/dna:locks against the lock information on the locked nodes
- An Observer that listens for changes to the /jcr:system/dna:locks branch.  This would be needed for a federated DNA install.
- A locking mechanism for non-referenceable nodes.  This is much more intricate than a locking approach for referenceable nodes only.
- Good hygiene (e.g., meaningful comments, exception messages)

Please feel free to review or provide feedback.  I don't intend to finish this until after the SessionCache changes are done, as there would be a lot of interplay between the locking code and the repository logic currently in the SessionCache.

> Add JSR-170 Locking Optional Feature
> ------------------------------------
>
>                 Key: DNA-457
>                 URL: https://jira.jboss.org/jira/browse/DNA-457
>             Project: DNA
>          Issue Type: Feature Request
>          Components: JCR
>    Affects Versions: 0.5
>            Reporter: Brian Carothers
>             Fix For: 1.0
>
>         Attachments: DNA-457_WIP.patch
>
>
> JSR-170 defines several optional features.  The locking feature allows users to lock nodes (and, optionally, their descendants) until the session terminates or until they are programatically unlocked.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the dna-issues mailing list