Rhys Yarranton created CURATOR-570:
--------------------------------------

             Summary: Excessive calls to ZooKeeper.updateServerList (which can 
result in session death)
                 Key: CURATOR-570
                 URL: https://issues.apache.org/jira/browse/CURATOR-570
             Project: Apache Curator
          Issue Type: Bug
          Components: Framework
    Affects Versions: 4.3.0, 4.2.0
            Reporter: Rhys Yarranton


On suspend and reconnect, Curator calls ZooKeeper.updateServerList via 
ConnectionState.checkState --> ConnectionState.handleNewConnectionString.  In 
addition, recipes may be triggered by this as well, and they too make calls 
ZooKeeper.updateServerList via ConnectState.checkTimeouts --> 
ConnectionState.handleNewConnectionString.

This happens even though the connection string has not actually changed.

Due to ZOOKEEPER-3825, this can cause the connection to be closed immediately.  
On its own this would be perceived as a glitch.  But due to the Curator-induced 
calls, what we see is a cycle of SUSPENDED/RECONNECTED, until eventually the 
session dies and a new session is recreated.

Based on the source code (at time of writing), ZooKeeper.updateServerList is 
not intended to be called frequently like this.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to