dafu created HELIX-195:
--------------------------

             Summary: Race condition between FINALIZE callbacks and Zk Callbacks
                 Key: HELIX-195
                 URL: https://issues.apache.org/jira/browse/HELIX-195
             Project: Apache Helix
          Issue Type: Sub-task
            Reporter: dafu
            Assignee: dafu


FINALIZE callbacks are sent async via CallbackHandler#reset(), while Zk 
callbacks are queued in ZkEventThread. It's possible that we are handling a 
FINALIZE callback before all Zk callbacks are cleaned up. This creates race 
conditions, for example, in zk session expiry, when a GenericController gets a 
FINALIZE callback, it cleans up all listeners using ZkClient#unsubscribe(), but 
Zk callbacks  leftover in ZkEventThread comes later, and re-subscribe all 
listeners, causing watcher leaking.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to