You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Arshad Mohammad (JIRA)" <ji...@apache.org> on 2016/09/08 16:27:21 UTC
[jira] [Created] (ZOOKEEPER-2570) ZooKeeper server expires the
client session when server is continuously under higher load
Arshad Mohammad created ZOOKEEPER-2570:
------------------------------------------
Summary: ZooKeeper server expires the client session when server is continuously under higher load
Key: ZOOKEEPER-2570
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2570
Project: ZooKeeper
Issue Type: Bug
Reporter: Arshad Mohammad
Assignee: Arshad Mohammad
Priority: Critical
ZooKeeper server expires the client session when server is continuously under higher load. Below steps can reproduce the issue
# Create multi operation
{code}
List<Op> ops = new ArrayList<Op>();
for (int i = 0; i < N; i++) {
Op create = Op.create(rootNode + "/" + i, "".getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE,
CreateMode.PERSISTENT);
ops.add(create);
}
{code}
Chose N in such a way that the total multi operation request size is less than but near 1 MB. For bigger request size increase jute.maxbuffer in servers
# Submit the multi operation request
{code} zooKeeper.multi(ops);{code}
# After repeating above steps few times client throws {{ConnectionLossException}} and at server one can find log "Expiring session 0x100b0ff5ecc0003, timeout of xxxxms exceeded"
Normally server expires session when it is not receiving ping from the client for longer than the client's session time-out. But in this case client is continuously doing operation with the server. So server should not expire the session.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)