[ https://issues.apache.org/jira/browse/KAFKA-2160?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14546320#comment-14546320 ]
Joel Koshy commented on KAFKA-2160: ----------------------------------- I would be surprised if the global RW lock is a problem since it is all in memory and purged only at an interval. This works well for the coordinator use case where you have empty watchers created slowly. As we discussed offline earlier in the week, I suggested this for simplicity. If in future there are other delayed operation purgatories in which these get created very quickly then this approach may not work as well. However, I doubt we will have such use-cases. > DelayedOperationPurgatory should remove the pair in watchersForKey with empty > watchers list > ------------------------------------------------------------------------------------------- > > Key: KAFKA-2160 > URL: https://issues.apache.org/jira/browse/KAFKA-2160 > Project: Kafka > Issue Type: Bug > Reporter: Guozhang Wang > Assignee: Guozhang Wang > Attachments: KAFKA-2160.patch, KAFKA-2160.patch, > KAFKA-2160_2015-04-30_15:20:14.patch, KAFKA-2160_2015-05-06_16:31:48.patch > > > With purgatory usage in consumer coordinator, it will be common that watcher > lists are very short and live only for a short time. So we'd better clean > them from the watchersForKey Pool once the list become empty in > checkAndComplete() calls. -- This message was sent by Atlassian JIRA (v6.3.4#6332)