Enis Soztutar created HBASE-7334:
------------------------------------
Summary: We should expire the zk session for crashed servers
rather than deleting ephemeral znodes
Key: HBASE-7334
URL: https://issues.apache.org/jira/browse/HBASE-7334
Project: HBase
Issue Type: Improvement
Components: master, regionserver, Zookeeper
Affects Versions: 0.96.0
Reporter: Enis Soztutar
For faster recovery HBASE-5844 and HBASE-5926 added logic to delete the
ephemeral znodes for the master and region server from the hbase-daemon.sh
script. However, the master and RSs have other ephemeral nodes that are not
cleaned (for example region splitting, table lock)
Instead of deleting the main znode, we can just invalidate the zookeeper
session by doing smt like HBaseTestingUtility.expireSession().
For this we need to keep the zk.getSessionId() and zk.getSessionPasswd()
around(write to a local file), keep the file updated for reconnections, and
once we know that the zk session is gone in ZNodeClearer, we can just create a
new session with the same credentials, and close that one, effectively causing
zk to delete all ephemeral nodes for the session.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira