You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Thomas Koch (JIRA)" <ji...@apache.org> on 2011/09/05 14:06:11 UTC

[jira] [Commented] (ZOOKEEPER-974) Configurable listen socket backlog for the client port

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

Thomas Koch commented on ZOOKEEPER-974:
---------------------------------------

Could you add some documentation so that other users could benefit from your experience and your new configuration option? In what kind of environments could problems like yours be expected, what exactly is the problem, what is the backlog of a socket, how do I see if I should increase the backlog size?

It would be great if you could enhance your patch to put those informations in the ZK docs.

> Configurable listen socket backlog for the client port
> ------------------------------------------------------
>
>                 Key: ZOOKEEPER-974
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-974
>             Project: ZooKeeper
>          Issue Type: Improvement
>          Components: server
>    Affects Versions: 3.3.2
>            Reporter: Hoonmin Kim
>            Priority: Minor
>         Attachments: ZOOKEEPER-974.patch
>
>
> We're running ZooKeeper ensemble(3-node configuration) for production use for months.
> Days ago, we suffered temporary network? problems that caused many reconnections(about 300) of ephemeral nodes in one ZooKeeper server.
> The almost all clients successfully reconnected to the other ZooKeeper servers,
> but one client failed to reconnect in time and got a session expired message from the server.
> (The problem is that our clients died when they got SessionExpired message.)
> There were many listenQ overflows/drops and out resets in a minute just before the problem situation.
> ---
> So we patched ZooKeeper to increase the backlog size for the client port socket to avoid unhappy cases like this.
> As ZooKeeper uses default backlog size(50) to bind(), we added "clientPortBacklog" option.
> Though the default backlog should be good for common environment,
> we believe that configuring the size is also meaningful.
> [Note]
> On linux, below parameter :
>     net.core.somaxconn
> needs to be larger than above "clientPortBacklog"  to correctly configure listen socket backlog

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira