[ https://issues.apache.org/jira/browse/HBASE-4245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13093086#comment-13093086 ]
Todd Lipcon commented on HBASE-4245: ------------------------------------ I think what may have happened in my case was that the server shutdown handler pool had 3 threads. The timeout manager kicked in 3 times, but after that, the three threads were taken up, and all blocked on META, but the server that had been hosting ROOT was stuck non-recovered. I'm thinking the best way to deal with this is to divorce the log-splitting threadpool from the reassignment of regions from the dead server. Will think on this. > Cluster hangs if RS serving root fails during startup sequence > -------------------------------------------------------------- > > Key: HBASE-4245 > URL: https://issues.apache.org/jira/browse/HBASE-4245 > Project: HBase > Issue Type: Bug > Components: master > Affects Versions: 0.90.3 > Reporter: Todd Lipcon > Assignee: ramkrishna.s.vasudevan > > On a large-ish cluster, the following sequence of events was seen to happen: > - master started, ROOT and META were both unassigned > - ROOT is assigned to rs01 > - META is assigned to rs02 > - Upon open of META, it writes its location into ROOT on rs01 > - rs01 crashes while appending to its HLog due to some other bug > - rs02 fails the region open sequence > - master notices that rs01 has crashed, and enqueues a ServerShutdownHandler > - ServerShutdownHandler blocks on CatalogTracker.waitForMeta() since ROOT and > META are not assigned yet > - master times out assignment of META, but never succeeds because ROOT > location is still marked as rs01 > This causes the cluster to never start up. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira