@InterfaceAudience.Private public class RegionNormalizerManager extends Object implements PropagatingConfigurationObserver
RegionNormalizer
subsystem.Modifier and Type | Field and Description |
---|---|
private static org.slf4j.Logger |
LOG |
private ExecutorService |
pool |
private RegionNormalizerChore |
regionNormalizerChore |
private RegionNormalizerTracker |
regionNormalizerTracker |
private boolean |
started |
private Object |
startStopLock |
private boolean |
stopped |
private RegionNormalizerWorker |
worker |
private RegionNormalizerWorkQueue<TableName> |
workQueue |
Constructor and Description |
---|
RegionNormalizerManager(RegionNormalizerTracker regionNormalizerTracker,
RegionNormalizerChore regionNormalizerChore,
RegionNormalizerWorkQueue<TableName> workQueue,
RegionNormalizerWorker worker) |
Modifier and Type | Method and Description |
---|---|
void |
deregisterChildren(ConfigurationManager manager)
Needs to be called to deregister the children from the manager.
|
long |
getMergePlanCount()
Return the number of times a
MergeNormalizationPlan has been submitted. |
ScheduledChore |
getRegionNormalizerChore() |
long |
getSkippedCount(NormalizationPlan.PlanType type)
Retrieve a count of the number of times plans of type
type were submitted but skipped. |
long |
getSplitPlanCount()
Return the number of times a
SplitNormalizationPlan has been submitted. |
boolean |
isNormalizerOn()
Return
true if region normalizer is on, false otherwise |
boolean |
normalizeRegions(List<TableName> tables,
boolean isHighPriority)
Submit tables for normalization.
|
void |
onConfigurationChange(org.apache.hadoop.conf.Configuration conf)
This method would be called by the
ConfigurationManager object when the
Configuration object is reloaded from disk. |
void |
planSkipped(NormalizationPlan.PlanType type)
Call-back for the case where plan couldn't be executed due to constraint violation, such as
namespace quota.
|
void |
registerChildren(ConfigurationManager manager)
Needs to be called to register the children to the manager.
|
void |
setNormalizerOn(boolean normalizerOn)
Set region normalizer on/off
|
void |
start() |
void |
stop() |
private static final org.slf4j.Logger LOG
private final RegionNormalizerTracker regionNormalizerTracker
private final RegionNormalizerChore regionNormalizerChore
private final RegionNormalizerWorkQueue<TableName> workQueue
private final RegionNormalizerWorker worker
private final ExecutorService pool
private final Object startStopLock
private boolean started
private boolean stopped
RegionNormalizerManager(@NonNull RegionNormalizerTracker regionNormalizerTracker, @Nullable RegionNormalizerChore regionNormalizerChore, @Nullable RegionNormalizerWorkQueue<TableName> workQueue, @Nullable RegionNormalizerWorker worker)
public void registerChildren(ConfigurationManager manager)
PropagatingConfigurationObserver
registerChildren
in interface PropagatingConfigurationObserver
manager
- : to register topublic void deregisterChildren(ConfigurationManager manager)
PropagatingConfigurationObserver
deregisterChildren
in interface PropagatingConfigurationObserver
manager
- : to deregister frompublic void onConfigurationChange(org.apache.hadoop.conf.Configuration conf)
ConfigurationObserver
ConfigurationManager
object when the
Configuration
object is reloaded from disk.onConfigurationChange
in interface ConfigurationObserver
public void start()
public void stop()
public ScheduledChore getRegionNormalizerChore()
public boolean isNormalizerOn()
true
if region normalizer is on, false
otherwisepublic void setNormalizerOn(boolean normalizerOn)
normalizerOn
- whether normalizer should be on or offpublic void planSkipped(NormalizationPlan.PlanType type)
type
- type of plan that was skipped.public long getSkippedCount(NormalizationPlan.PlanType type)
type
were submitted but skipped.type
- type of plan for which skipped count is to be returnedpublic long getSplitPlanCount()
SplitNormalizationPlan
has been submitted.public long getMergePlanCount()
MergeNormalizationPlan
has been submitted.public boolean normalizeRegions(List<TableName> tables, boolean isHighPriority)
tables
- a list of tables to submit.isHighPriority
- true
when these requested tables should skip to the front of the
queue.true
when work was queued, false
otherwise.Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.