nijel created ZOOKEEPER-2251:
--------------------------------

             Summary: Add Client side packet response timeout to avoid infinite 
wait.
                 Key: ZOOKEEPER-2251
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2251
             Project: ZooKeeper
          Issue Type: Bug
            Reporter: nijel


I came across one issue related to Client side packet response timeout In my 
cluster many packet drops happened for some time.

One observation is the zookeeper client got hanged. As per the thread dump it 
is waiting for the response/ACK for the operation performed (synchronous API 
used here).
I am using 
zookeeper.serverCnxnFactory=org.apache.zookeeper.server.NIOServerCnxnFactory

Since only few packets missed there is no DISCONNECTED event occurred.

Need add a "response time out" for the operations or packets.

*Comments from [~rakeshr]*
My observation about the problem:-

* Can use tools like 'Wireshark' to simulate the artificial packet loss.
* Assume there is only one packet in the 'outgoingQueue' and unfortunately the 
server response packet lost. Now, client will enter into infinite waiting. 
https://github.com/apache/zookeeper/blob/trunk/src/java/main/org/apache/zookeeper/ClientCnxn.java#L1515
* Probably we can discuss more about this problem and possible solutions(add 
packet ACK timeout or another better approach) in the jira.




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

Reply via email to