Qiang Tian created ZOOKEEPER-2012:
-------------------------------------
Summary: HBase client hangs after client-side OOM
Key: ZOOKEEPER-2012
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2012
Project: ZooKeeper
Issue Type: Improvement
Reporter: Qiang Tian
Priority: Minor
please see
http://apache-hbase.679495.n3.nabble.com/HBase-client-hangs-after-client-side-OOM-td4062675.html.
it looks the send thread caught the error successfully, as it is finally
running fine.. but the cleanup fail to notify the main thread...so I suspect it
is a very small timing hole that the packet is not on the 2 queues at the same
time..it looks it could happen in the latest code ClientCnxnSocketNIO#doIO as
well..
potential fixes:
1)add timeout during wait
2)try/catch for the possible timing hole:
{code}
if (!p.bb.hasRemaining()) {
sentCount++;
outgoingQueue.removeFirstOccurrence(p);
if (p.requestHeader != null
&& p.requestHeader.getType() != OpCode.ping
&& p.requestHeader.getType() != OpCode.auth) {
synchronized (pendingQueue) {
pendingQueue.add(p);
}
}
}
{code}
thoughts?
thanks.
--
This message was sent by Atlassian JIRA
(v6.2#6252)