Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-16367

Race between master and region server initialization may lead to premature server abort

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.1.2
    • 1.4.0, 2.0.0
    • None
    • None
    • Reviewed

    Description

      I was troubleshooting a case where hbase (1.1.2) master always dies shortly after start - see attached master log snippet.

      It turned out that master initialization thread was racing with HRegionServer#preRegistrationInitialization() (initializeZooKeeper, actually) since HMaster extends HRegionServer.
      Through additional logging in master:

          this.oldLogDir = createInitialFileSystemLayout();
          HFileSystem.addLocationsOrderInterceptor(conf);
          LOG.info("creating splitLogManager");
      

      I found that execution didn't reach the last log line before region server declared cluster Id being null.

      Attachments

        1. 16367.addendum
          0.7 kB
          Ted Yu
        2. 16367.v1.txt
          1 kB
          Ted Yu
        3. 16367.v2.txt
          3 kB
          Ted Yu
        4. 16367.v3.txt
          4 kB
          Ted Yu
        5. 63908-master.log
          21 kB
          Ted Yu

        Issue Links

          Activity

            People

              yuzhihong@gmail.com Ted Yu
              yuzhihong@gmail.com Ted Yu
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: