[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14746992#comment-14746992
 ] 

Akihiro Suda commented on ZOOKEEPER-2246:
-----------------------------------------

Hi, [~pmvmware]

Yes, you got a point.

Actually, I found old ZooKeeper (< 3.4.0) had used blocking-mode 
{{java.nio.channels.SocketChannel}}.
However, it has been replaced to {{java.net.Socket}} since 
[{{b6e612}}|https://github.com/apache/zookeeper/commit/b6e612a6a075ed1dc44addafc480c20ff972b54a]
 (17 Nov 2010) so as to support {{SO_TIMEOUT}}. (ZOOKEEPER-900)
(It is possible to support {{SO_TIMEOUT}} in 
{{java.nio.channels.SocketChannel}}, but needs an eccentric trick: 
https://technfun.wordpress.com/2009/01/29/networking-in-java-non-blocking-nio-blocking-nio-and-io/)

Note that there has been 5 years of strong desire for drastic refactoring of 
QCM  (ZOOKEEPER-901), but it might take a time to get resolved.

So I suggest to merge the patch, and call it a day for the moment.

Thanks!

> quorum connection manager takes a long time to shut down
> --------------------------------------------------------
>
>                 Key: ZOOKEEPER-2246
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2246
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: quorum
>            Reporter: Michi Mutsuzaki
>             Fix For: 3.5.2, 3.6.0
>
>         Attachments: 
> 0001-ZOOKEEPER-2246-quorum-connection-manager-takes-a-lon.patch
>
>
> Receive worker can take a long time to shut down because the socket timeout 
> is set to zero: http://s.apache.org/TfI
> There was a discussion on the mailing list a while back: 
> http://s.apache.org/cYG



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to