You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@zookeeper.apache.org by "Mate Szalay-Beko (Jira)" <ji...@apache.org> on 2020/05/19 14:51:00 UTC

[jira] [Created] (ZOOKEEPER-3838) Async handling of quorum connection requests, including SSL handshakes

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)