Skip to content

Latest commit

 

History

History
29 lines (19 loc) · 737 Bytes

File metadata and controls

29 lines (19 loc) · 737 Bytes

HBASE-22023

Scenario

  1. Shutdown command comes while RS is initializing, RS is marked as stopped

  2. The leases is not initialized due to

  3. if (!isStopped() && !isAborted()) {
      initializeThreads();
    }
  4. But in normal start process, it still uses leases without sanity check.

Trigger analysis

  1. As below code, metricsRegionServer is the meta-info variable.
this.metricsRegionServer = new MetricsRegionServer()
if (getConfiguration().getBoolean("hbase.regionserver.workers", true)) {
     startServices();
 }
  1. And it is written, we should crash the RS node, but due to metricsRegionServer is already on RS node, so crash should change to shutdown.