[ 
https://issues.apache.org/jira/browse/OAK-1370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13886675#comment-13886675
 ] 

Michael Dürig commented on OAK-1370:
------------------------------------

At http://svn.apache.org/r1562859 I implemented an initial solution for the 
iterators returned by {{NodeImpl}}: such iterators are simply wrapped into a 
synchronized iterator on the associated {{NodeDelegate}} instance. This setup 
ensures that all calls to such iterators are properly synchronized with other 
session related calls going through {{SessionDelegate.perfom()}}.

> Guard against concurrent read access through the same session
> -------------------------------------------------------------
>
>                 Key: OAK-1370
>                 URL: https://issues.apache.org/jira/browse/OAK-1370
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>             Fix For: 0.17
>
>
> OAK-687 synchronized {{SessionDelegate#perform}} to protect Oak internal data 
> structures from becoming corrupt in the case a session is accessed 
> concurrently from multiple threads. Turns out however, that there are more 
> cases we didn't consider so far: e.g. concurrently iterating over iterators 
> returned by {{Node.getNodes()}} is not captured by this mechanism. 



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to