zookeeper-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jie Huang (Jira)" <j...@apache.org>
Subject [jira] [Created] (ZOOKEEPER-3573) Dealing with long TLS connection closing time without SO_LINGER option
Date Sat, 12 Oct 2019 22:50:00 GMT
Jie Huang created ZOOKEEPER-3573:
------------------------------------

             Summary: Dealing with long TLS connection closing time without SO_LINGER option
                 Key: ZOOKEEPER-3573
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3573
             Project: ZooKeeper
          Issue Type: Improvement
          Components: server
    Affects Versions: 3.6.0
            Reporter: Jie Huang


As described in ZOOKEEPER-3384, with SSL sockets, a close_notify is required to be sent before
closing the write side of a connection. When the send buffer is full and the writing is blocked,
it will take a long time to send close_notify thus a long time to close the socket. The long
closing time on followers with a partitioned-away leader would stall the shutdown process
and delay a new leader election to establish a new quorum. As a result, the ensemble would
be unavailable for a long time.

In ZOOKEEPER-3384, SO_LINGER option is used to close the socket quickly (and potentially uncleanly).
In JDK 11, however, SO_LINGER option is not honored so we need a new way to avoid the long
quorum unavailable time.



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

Mime
View raw message