You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Zach York (Jira)" <ji...@apache.org> on 2020/08/21 00:44:00 UTC
[jira] [Created] (HBASE-24923) Running InitMetaProcedures are
missed if Hmaster startup happens after Meta assign
Zach York created HBASE-24923:
---------------------------------
Summary: Running InitMetaProcedures are missed if Hmaster startup happens after Meta assign
Key: HBASE-24923
URL: https://issues.apache.org/jira/browse/HBASE-24923
Project: HBase
Issue Type: Bug
Affects Versions: 3.0.0-alpha-1
Reporter: Zach York
In HMaster startup, if the InitMetaProcedure was stopped after the meta assign stage, it will have a RegionState assigned to it and will not fall into this if statement: https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java#L1044.
This means if an InitMetaProcedure is running (in the INIT_META_CREATE_NAMESPACES state), we won't look for any instances of running InitMetaProcedures and won't correctly await until they are done: https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java#L1065
The check for running InitMetaProcedures should be moved outside of the if statement and only if it is null should it try to add a new InitMetaProcedure (if there is no RegionState for meta or if meta is offline). This way we will correctly wait for procedures that are running that have passed the INIT_META_ASSIGN_META state (which sets the RegionStates that HMaster is looking at).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)