Class TestRegionNormalizerManagerConfigurationObserver

java.lang.Object
org.apache.hadoop.hbase.master.normalizer.TestRegionNormalizerManagerConfigurationObserver

@Tag("org.apache.hadoop.hbase.testclassification.MasterTests") @Tag("org.apache.hadoop.hbase.testclassification.SmallTests") public class TestRegionNormalizerManagerConfigurationObserver extends Object
Test that configuration changes are propagated to all children.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerChore
     
    private org.apache.hadoop.conf.Configuration
     
    private org.apache.hadoop.hbase.conf.ConfigurationManager
     
    private org.apache.hadoop.hbase.master.MasterServices
     
    private org.apache.hadoop.hbase.master.normalizer.SimpleRegionNormalizer
     
    private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerWorkQueue<org.apache.hadoop.hbase.TableName>
     
    private static final Pattern
     
    private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerStateStore
     
    private static final HBaseTestingUtil
     
    private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerWorker
     
  • Constructor Summary

    Constructors
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    private static long
    parseConfiguredRateLimit(org.apache.hbase.thirdparty.com.google.common.util.concurrent.RateLimiter rateLimiter)
    The RateLimiter class does not publicly expose its currently configured rate.
    void
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • testUtil

      private static final HBaseTestingUtil testUtil
    • rateLimitPattern

      private static final Pattern rateLimitPattern
    • conf

      private org.apache.hadoop.conf.Configuration conf
    • normalizer

      private org.apache.hadoop.hbase.master.normalizer.SimpleRegionNormalizer normalizer
    • masterServices

      @Mock private org.apache.hadoop.hbase.master.MasterServices masterServices
    • stateStore

      @Mock private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerStateStore stateStore
    • chore

      @Mock private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerChore chore
    • queue

      @Mock private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerWorkQueue<org.apache.hadoop.hbase.TableName> queue
    • worker

      private org.apache.hadoop.hbase.master.normalizer.RegionNormalizerWorker worker
    • configurationManager

      private org.apache.hadoop.hbase.conf.ConfigurationManager configurationManager
  • Constructor Details

  • Method Details

    • before

      @BeforeEach public void before()
    • test

      @Test public void test()
    • parseConfiguredRateLimit

      private static long parseConfiguredRateLimit(org.apache.hbase.thirdparty.com.google.common.util.concurrent.RateLimiter rateLimiter)
      The RateLimiter class does not publicly expose its currently configured rate. It does offer this information in the RateLimiter.toString() method. It's fragile, but parse this value. The alternative would be to track the value explicitly in the worker, and the associated coordination overhead paid at runtime. See the related note on RegionNormalizerWorker.getRateLimiter().