[ https://issues.apache.org/jira/browse/ZOOKEEPER-2141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15217794#comment-15217794 ]
Adam Milne-Smith commented on ZOOKEEPER-2141: --------------------------------------------- I've provided a patch for using option 1. The only remaining issue I can see with this is that we are delegating to HashMap.equals() which could result in a ConcurrentModificationException if another method was called on "that" concurrently. I can't envisage a reason why main code would have 2 ACL caches and compare them, but if we wanted to be cautious so this doesn't come back to bite anyone later, we could replace the HashMaps with ConcurrentHashMaps. > ACL cache in DataTree never removes entries > ------------------------------------------- > > Key: ZOOKEEPER-2141 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2141 > Project: ZooKeeper > Issue Type: Bug > Affects Versions: 3.4.6 > Reporter: Karol Dudzinski > Assignee: Adam Milne-Smith > Priority: Blocker > Fix For: 3.4.9, 3.5.2 > > Attachments: ZOOKEEPER-2141-3.4.patch, ZOOKEEPER-2141.patch, > ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch, > ZOOKEEPER-2141.patch, ZOOKEEPER-2141.patch > > > The problem and potential solutions are discussed in > http://mail-archives.apache.org/mod_mbox/zookeeper-user/201502.mbox/browser > I will attach a proposed patch in due course. -- This message was sent by Atlassian JIRA (v6.3.4#6332)