mbautin requested code review of "[jira]
HBASE-5344 [89-fb] Scan unassigned region directory on master failover".
Reviewers: Kannan, Karthik, Liyin, JIRA, stack
In case the master dies after a regionserver writes region state as OPENED or CLOSED in ZK but before the update is received by master and written to meta, the new master that comes up has to pick up the region state from ZK and write it to meta. Otherwise we can get multiply-assigned regions.
The current solution tries to reassign the root region if it is unassigned but does not implement a work-around if META regions are missing. Also, it currently heavily relies on "direct scanning" of regionservers (reading regionserver list from ZK and doing an RPC on each regionserver to get the list of online regions). We were already doing that in master failover, but I am making it parallel here.
Unit tests, dev cluster, dark launch with killing regionservers and master
MANAGE HERALD DIFFERENTIAL RULES
WHY DID I GET THIS EMAIL?
Tip: use the X-Herald-Rules header to filter Herald messages in your client.