Mate Szalay-Beko created ZOOKEEPER-3838: -------------------------------------------
Summary: Async handling of quorum connection requests, including SSL handshakes Key: ZOOKEEPER-3838 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3838 Project: ZooKeeper Issue Type: Improvement Affects Versions: 3.5.8, 3.6.1 Reporter: Mate Szalay-Beko We are facing issues when the leader election takes too long, as the connection initiation between quorum members takes too much time when QuorumSSL is used. In the current implementation, we handle the connection requests (and SASL authentications) asynchronously when QuorumSASL is enabled. However, the asynchronous handling will not be enabled if only QuorumSSL is enabled (but QuorumSASL is disabled). And anyway, as far as I can see, the SSL handshake happens before the current asynchronous part. See: https://github.com/apache/zookeeper/blob/a908001be9641d78040b1954acb0cd3a8e9e42c2/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/QuorumCnxManager.java#L1058 The goal would be to move the SSL handshake to the asynchronous code part, and also to make the connection request handling always asynchronous regardless of the QuorumSASL / QuorumSSL configs. Please note, we already did this for the connection initiation part in ZOOKEEPER-3756. -- This message was sent by Atlassian Jira (v8.3.4#803005)