GitHub user vincentpoon opened a pull request:
https://github.com/apache/zookeeper/pull/209
ZOOKEEPER-2738 maxClientCnxns not limiting concurrent connections proâ¦
â¦perly
The problem was that in branch-3.5+ , because of ZOOKEEPER-1504, we now
have one acceptor thread and multiple selector threads. The acceptor thread
was checking the max connections, but adding the connection to the ipMap (used
to check maxCnxnCount) was done in the selector threads. As a result, when
many connections come in concurrently, the acceptor thread can potentially
accept many connections before the selector threads have a chance to update the
ipMap.
This patch updates the ipMap from the acceptor thread immediately.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/vincentpoon/zookeeper ZOOKEEPER-2738
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/zookeeper/pull/209.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #209
----
commit c4fdafbf94f8e6296a349eb10ff02f2d77a2ddb8
Author: Vincent <[email protected]>
Date: 2017-03-27T17:19:37Z
ZOOKEEPER-2738 maxClientCnxns not limiting concurrent connections properly
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---