[
https://issues.apache.org/jira/browse/HBASE-3755?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jean-Daniel Cryans updated HBASE-3755:
--------------------------------------
Attachment: HBASE-3755.patch
So I did a bunch of testing on my laptop to see how we failed when too many
connections. It's ugly. Really ugly. In this patch I improve three things while
not breaking any behavior:
- Add a more meaningful message for connection loss.
- Close the ZK handle on that error, what I saw is that since we didn't close
it the client connection managers were staying alive trying to shutdown (could
this be a ZK bug?) such that it was spewing errors like crazy and it never
stops.
- We were passing the exception to ZooKeeperConnectionException as if it was
the message, I corrected that by changing the constructor to require a message
plus the original exception. Then in HCM instead of creating yet another
ZooKeeperConnectionException, we throw the one that we get since we have it
already.
> Catch zk's ConnectionLossException and augment error message with more help
> ---------------------------------------------------------------------------
>
> Key: HBASE-3755
> URL: https://issues.apache.org/jira/browse/HBASE-3755
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.90.1
> Reporter: Jean-Daniel Cryans
> Assignee: Jean-Daniel Cryans
> Fix For: 0.90.3
>
> Attachments: HBASE-3755.patch
>
>
> 0.90 has a different behavior regarding ZK connections, it tends to create
> too many of them and it's not obvious to users what they should do to fix. I
> think I've helped at least 5 different users this week with this error.
> By catching ConnectionLossException and augmenting its message, we could say
> something like "it's possible that the ZooKeeper server has too many
> connections from this IP, see doc at blah" since the ZK server isn't nice
> enough to let us know what's going on.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira