@InterfaceAudience.Private public class RegionStates extends Object
Modifier and Type | Method and Description |
---|---|
RegionState |
createRegionState(HRegionInfo hri)
Add a region to RegionStates.
|
void |
createRegionStates(List<HRegionInfo> hris)
Add a list of regions to RegionStates.
|
protected Map<TableName,Map<ServerName,List<HRegionInfo>>> |
getAssignmentsByTable()
This is an EXPENSIVE clone.
|
protected double |
getAverageLoad()
Compute the average load across all region servers.
|
Map<HRegionInfo,ServerName> |
getRegionAssignments() |
protected HRegionInfo |
getRegionInfo(byte[] regionName)
Get the HRegionInfo from cache, if not there, from the hbase:meta table
|
ServerName |
getRegionServerOfRegion(HRegionInfo hri) |
Map<String,RegionState> |
getRegionsInTransition()
Get regions in transition and their states
|
List<HRegionInfo> |
getRegionsOfTable(TableName tableName)
Gets the online regions of the specified table.
|
protected RegionState |
getRegionState(HRegionInfo hri) |
protected RegionState |
getRegionState(String regionName) |
RegionState |
getRegionTransitionState(HRegionInfo hri)
Get region transition state
|
RegionState |
getRegionTransitionState(String regionName)
Get region transition state
|
boolean |
isRegionInState(HRegionInfo hri,
RegionState.State... states) |
boolean |
isRegionInState(String regionName,
RegionState.State... states) |
boolean |
isRegionInTransition(HRegionInfo hri) |
boolean |
isRegionInTransition(String regionName) |
boolean |
isRegionOffline(HRegionInfo hri) |
boolean |
isRegionOnline(HRegionInfo hri) |
boolean |
isRegionsInTransition() |
void |
logSplit(HRegionInfo region)
Log split is done for a given region, so it is assignable now.
|
void |
logSplit(ServerName serverName)
A dead server's hlogs have been split so that all the regions
used to be open on it can be safely assigned now.
|
void |
regionOffline(HRegionInfo hri)
A region is offline, won't be in transition any more.
|
void |
regionOffline(HRegionInfo hri,
RegionState.State expectedState)
A region is offline, won't be in transition any more.
|
void |
regionOnline(HRegionInfo hri,
ServerName serverName)
A region is online, won't be in transition any more.
|
List<HRegionInfo> |
serverOffline(ZooKeeperWatcher watcher,
ServerName sn)
A server is offline, all regions on it are dead.
|
RegionState |
updateRegionState(HRegionInfo hri,
RegionState.State state)
Update a region state.
|
RegionState |
updateRegionState(HRegionInfo hri,
RegionState.State state,
ServerName serverName)
Update a region state.
|
RegionState |
updateRegionState(RegionTransition transition,
RegionState.State state)
Update a region state.
|
void |
waitForUpdate(long timeout)
Wait for the state map to be updated by assignment manager.
|
void |
waitOnRegionToClearRegionsInTransition(HRegionInfo hri)
Wait on region to clear regions-in-transition.
|
public Map<HRegionInfo,ServerName> getRegionAssignments()
public ServerName getRegionServerOfRegion(HRegionInfo hri)
public Map<String,RegionState> getRegionsInTransition()
public boolean isRegionInTransition(HRegionInfo hri)
public boolean isRegionInTransition(String regionName)
public boolean isRegionsInTransition()
public boolean isRegionOnline(HRegionInfo hri)
public boolean isRegionOffline(HRegionInfo hri)
public boolean isRegionInState(HRegionInfo hri, RegionState.State... states)
public boolean isRegionInState(String regionName, RegionState.State... states)
public void waitForUpdate(long timeout) throws InterruptedException
InterruptedException
public RegionState getRegionTransitionState(HRegionInfo hri)
public RegionState getRegionTransitionState(String regionName)
public void createRegionStates(List<HRegionInfo> hris)
public RegionState createRegionState(HRegionInfo hri)
public RegionState updateRegionState(HRegionInfo hri, RegionState.State state)
public RegionState updateRegionState(RegionTransition transition, RegionState.State state)
public RegionState updateRegionState(HRegionInfo hri, RegionState.State state, ServerName serverName)
public void regionOnline(HRegionInfo hri, ServerName serverName)
public void logSplit(ServerName serverName)
public void logSplit(HRegionInfo region)
public void regionOffline(HRegionInfo hri)
public void regionOffline(HRegionInfo hri, RegionState.State expectedState)
public List<HRegionInfo> serverOffline(ZooKeeperWatcher watcher, ServerName sn)
public List<HRegionInfo> getRegionsOfTable(TableName tableName)
hbase:meta
.
Only returns online regions. If a region on this table has been
closed during a disable, etc., it will be included in the returned list.
So, the returned list may not necessarily be ALL regions in this table, its
all the ONLINE regions in the table.tableName
- tableName
public void waitOnRegionToClearRegionsInTransition(HRegionInfo hri) throws InterruptedException
If the region isn't in transition, returns immediately. Otherwise, method blocks until the region is out of transition.
InterruptedException
protected double getAverageLoad()
protected Map<TableName,Map<ServerName,List<HRegionInfo>>> getAssignmentsByTable()
protected RegionState getRegionState(HRegionInfo hri)
protected RegionState getRegionState(String regionName)
protected HRegionInfo getRegionInfo(byte[] regionName)
regionName
- Copyright © 2013 The Apache Software Foundation. All rights reserved.