Nick Dimiduk created HBASE-23836:
------------------------------------

             Summary: Race condition in Master startup can ignore shutdown RPC
                 Key: HBASE-23836
                 URL: https://issues.apache.org/jira/browse/HBASE-23836
             Project: HBase
          Issue Type: Bug
          Components: master
    Affects Versions: 3.0.0
            Reporter: Nick Dimiduk


Identified as the root-cause of HBASE-23808. The master starts its RPC server 
first thing in its constructor, but does not initialize it's {{clusterTracker}} 
until later (both from the super constructor). Thus it is possible for a client 
to issue a {{shutdown}} RPC is received by a master before it has a 
clusterTracker instance. It is highly likely (guaranteed?) to also not be the 
active master at this point. In such a case, the {{shutdown}} is received and 
acknowledged back to the client, but is effectively ignored.

After chatting with [~bharathv] on the PR, we believe this race becomes more 
likely (though still rare) after HBASE-18095. This is something to consider 
should we get around to a startup sequence refactor.

Setting priority as "minor" because the condition is merely annoying; from what 
I can tell, a subsequent {{shutdown}} RPC to any master would result in the 
correct shutdown of the first.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to