@InterfaceAudience.Private public class RegionStates extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
RegionStates.RegionFailedOpen |
static class |
RegionStates.RegionStateNode
Current Region State.
|
static class |
RegionStates.ServerState
Server State.
|
static class |
RegionStates.ServerStateNode
State of Server; list of hosted regions, etc.
|
| Modifier and Type | Field and Description |
|---|---|
static org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateStampComparator |
REGION_STATE_STAMP_COMPARATOR |
protected static org.apache.hadoop.hbase.master.RegionState.State[] |
STATES_EXPECTED_ON_CLOSE |
protected static org.apache.hadoop.hbase.master.RegionState.State[] |
STATES_EXPECTED_ON_OPEN |
| Constructor and Description |
|---|
RegionStates() |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
addRegionInTransition(RegionStates.RegionStateNode regionNode,
RegionTransitionProcedure procedure) |
RegionStates.RegionFailedOpen |
addToFailedOpen(RegionStates.RegionStateNode regionNode) |
void |
addToOfflineRegions(RegionStates.RegionStateNode regionNode) |
org.apache.hadoop.hbase.HRegionLocation |
checkReopened(org.apache.hadoop.hbase.HRegionLocation oldLoc)
Check whether the region has been reopened.
|
void |
clear() |
protected RegionStates.RegionStateNode |
createRegionStateNode(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
void |
deleteRegion(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
List<org.apache.hadoop.hbase.client.RegionInfo> |
getAssignedRegions() |
Map<org.apache.hadoop.hbase.TableName,Map<org.apache.hadoop.hbase.ServerName,List<org.apache.hadoop.hbase.client.RegionInfo>>> |
getAssignmentsByTable() |
Map<org.apache.hadoop.hbase.TableName,Map<org.apache.hadoop.hbase.ServerName,List<org.apache.hadoop.hbase.client.RegionInfo>>> |
getAssignmentsByTable(boolean forceByCluster)
This is an EXPENSIVE clone.
|
double |
getAverageLoad() |
RegionStates.RegionFailedOpen |
getFailedOpen(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
protected RegionStates.RegionStateNode |
getOrCreateRegionStateNode(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
Map<org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.ServerName> |
getRegionAssignments() |
Map<org.apache.hadoop.hbase.master.RegionState.State,List<org.apache.hadoop.hbase.client.RegionInfo>> |
getRegionByStateOfTable(org.apache.hadoop.hbase.TableName tableName) |
List<org.apache.hadoop.hbase.master.RegionState> |
getRegionFailedOpen() |
org.apache.hadoop.hbase.ServerName |
getRegionServerOfRegion(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
List<RegionStates.RegionStateNode> |
getRegionsInTransition() |
int |
getRegionsInTransitionCount()
Get the number of regions in transition.
|
SortedSet<org.apache.hadoop.hbase.master.RegionState> |
getRegionsInTransitionOrderedByTimestamp() |
List<org.apache.hadoop.hbase.client.RegionInfo> |
getRegionsOfTable(org.apache.hadoop.hbase.TableName table) |
List<org.apache.hadoop.hbase.client.RegionInfo> |
getRegionsOfTable(org.apache.hadoop.hbase.TableName table,
boolean offline) |
List<org.apache.hadoop.hbase.HRegionLocation> |
getRegionsOfTableForReopen(org.apache.hadoop.hbase.TableName tableName)
Get the regions to be reopened when modifying a table.
|
List<org.apache.hadoop.hbase.master.RegionState> |
getRegionsStateInTransition() |
org.apache.hadoop.hbase.master.RegionState |
getRegionState(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
org.apache.hadoop.hbase.master.RegionState |
getRegionState(String encodedRegionName) |
RegionStates.RegionStateNode |
getRegionStateNode(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
ArrayList<org.apache.hadoop.hbase.master.RegionState> |
getRegionStates() |
RegionTransitionProcedure |
getRegionTransitionProcedure(org.apache.hadoop.hbase.client.RegionInfo hri) |
org.apache.hadoop.hbase.master.RegionState |
getRegionTransitionState(org.apache.hadoop.hbase.client.RegionInfo hri) |
RegionStates.ServerStateNode |
getServerNode(org.apache.hadoop.hbase.ServerName serverName) |
List<org.apache.hadoop.hbase.client.RegionInfo> |
getServerRegionInfoSet(org.apache.hadoop.hbase.ServerName serverName)
Returns the set of regions hosted by the specified server
|
Map<org.apache.hadoop.hbase.ServerName,List<org.apache.hadoop.hbase.client.RegionInfo>> |
getSnapShotOfAssignment(Collection<org.apache.hadoop.hbase.client.RegionInfo> regions) |
boolean |
hasRegionsInTransition() |
boolean |
hasTableRegionStates(org.apache.hadoop.hbase.TableName tableName) |
boolean |
isRegionInRegionStates(org.apache.hadoop.hbase.client.RegionInfo hri) |
boolean |
isRegionInState(org.apache.hadoop.hbase.client.RegionInfo regionInfo,
org.apache.hadoop.hbase.master.RegionState.State... state) |
boolean |
isRegionInTransition(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
boolean |
isRegionOffline(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
boolean |
isRegionOnline(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
boolean |
isReplicaAvailableForRegion(org.apache.hadoop.hbase.client.RegionInfo info) |
void |
logSplit(org.apache.hadoop.hbase.ServerName serverName)
Called after we've split all logs on a crashed Server.
|
void |
logSplitting(org.apache.hadoop.hbase.ServerName serverName)
Call this when we start log splitting for a crashed Server.
|
void |
metaLogSplit(org.apache.hadoop.hbase.ServerName serverName)
Called after we've split the meta logs on a crashed Server.
|
void |
metaLogSplitting(org.apache.hadoop.hbase.ServerName serverName)
Call this when we start meta log splitting a crashed Server.
|
static String |
regionNamesToString(Collection<byte[]> regions) |
void |
removeFromFailedOpen(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
void |
removeFromOfflineRegions(org.apache.hadoop.hbase.client.RegionInfo regionInfo) |
RegionStates.ServerStateNode |
removeRegionFromServer(org.apache.hadoop.hbase.ServerName serverName,
RegionStates.RegionStateNode regionNode) |
protected void |
removeRegionInTransition(RegionStates.RegionStateNode regionNode,
RegionTransitionProcedure procedure) |
void |
removeServer(org.apache.hadoop.hbase.ServerName serverName) |
void |
updateRegionState(org.apache.hadoop.hbase.client.RegionInfo regionInfo,
org.apache.hadoop.hbase.master.RegionState.State state) |
protected static final org.apache.hadoop.hbase.master.RegionState.State[] STATES_EXPECTED_ON_OPEN
protected static final org.apache.hadoop.hbase.master.RegionState.State[] STATES_EXPECTED_ON_CLOSE
public static final org.apache.hadoop.hbase.master.assignment.RegionStates.RegionStateStampComparator REGION_STATE_STAMP_COMPARATOR
public void clear()
public boolean isRegionInRegionStates(org.apache.hadoop.hbase.client.RegionInfo hri)
protected RegionStates.RegionStateNode createRegionStateNode(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
protected RegionStates.RegionStateNode getOrCreateRegionStateNode(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public RegionStates.RegionStateNode getRegionStateNode(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public void deleteRegion(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public ArrayList<org.apache.hadoop.hbase.master.RegionState> getRegionStates()
public org.apache.hadoop.hbase.master.RegionState getRegionState(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public org.apache.hadoop.hbase.master.RegionState getRegionState(String encodedRegionName)
public boolean hasTableRegionStates(org.apache.hadoop.hbase.TableName tableName)
public List<org.apache.hadoop.hbase.client.RegionInfo> getRegionsOfTable(org.apache.hadoop.hbase.TableName table)
public List<org.apache.hadoop.hbase.HRegionLocation> getRegionsOfTableForReopen(org.apache.hadoop.hbase.TableName tableName)
openSeqNum in the returned HRegionLocation is also used to indicate the
state of this region, positive means the region is in RegionState.State.OPEN, -1 means
RegionState.State.OPENING. And for regions in other states we do not need reopen them.public org.apache.hadoop.hbase.HRegionLocation checkReopened(org.apache.hadoop.hbase.HRegionLocation oldLoc)
HRegionLocation is the
same with getRegionsOfTableForReopen(TableName).
For a region which is in RegionState.State.OPEN before, if the region state is changed or the open
seq num is changed, we can confirm that it has been reopened.
For a region which is in RegionState.State.OPENING before, usually it will be in RegionState.State.OPEN
now and we will schedule a MRP to reopen it. But there are several exceptions:
RegionState.State.OPEN or RegionState.State.OPENING.RegionState.State.OPENING state and still on the same
server, then here we will still return a HRegionLocation for it, just like
getRegionsOfTableForReopen(TableName).oldLoc - the previous state/location of this regionHRegionLocation which
means we still need to reopen the region.getRegionsOfTableForReopen(TableName)public List<org.apache.hadoop.hbase.client.RegionInfo> getRegionsOfTable(org.apache.hadoop.hbase.TableName table, boolean offline)
public List<org.apache.hadoop.hbase.client.RegionInfo> getServerRegionInfoSet(org.apache.hadoop.hbase.ServerName serverName)
serverName - the server we are interested inpublic void metaLogSplitting(org.apache.hadoop.hbase.ServerName serverName)
metaLogSplit(ServerName)public void metaLogSplit(org.apache.hadoop.hbase.ServerName serverName)
metaLogSplitting(ServerName)public void logSplitting(org.apache.hadoop.hbase.ServerName serverName)
logSplit(ServerName)public void logSplit(org.apache.hadoop.hbase.ServerName serverName)
logSplitting(ServerName)public void updateRegionState(org.apache.hadoop.hbase.client.RegionInfo regionInfo,
org.apache.hadoop.hbase.master.RegionState.State state)
public List<org.apache.hadoop.hbase.client.RegionInfo> getAssignedRegions()
public boolean isRegionInState(org.apache.hadoop.hbase.client.RegionInfo regionInfo,
org.apache.hadoop.hbase.master.RegionState.State... state)
public boolean isRegionOnline(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public boolean isRegionOffline(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public Map<org.apache.hadoop.hbase.ServerName,List<org.apache.hadoop.hbase.client.RegionInfo>> getSnapShotOfAssignment(Collection<org.apache.hadoop.hbase.client.RegionInfo> regions)
public Map<org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.ServerName> getRegionAssignments()
public Map<org.apache.hadoop.hbase.master.RegionState.State,List<org.apache.hadoop.hbase.client.RegionInfo>> getRegionByStateOfTable(org.apache.hadoop.hbase.TableName tableName)
public org.apache.hadoop.hbase.ServerName getRegionServerOfRegion(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public Map<org.apache.hadoop.hbase.TableName,Map<org.apache.hadoop.hbase.ServerName,List<org.apache.hadoop.hbase.client.RegionInfo>>> getAssignmentsByTable(boolean forceByCluster)
forceByCluster - a flag to force to aggregate the server-load to the cluster levelpublic Map<org.apache.hadoop.hbase.TableName,Map<org.apache.hadoop.hbase.ServerName,List<org.apache.hadoop.hbase.client.RegionInfo>>> getAssignmentsByTable()
protected boolean addRegionInTransition(RegionStates.RegionStateNode regionNode, RegionTransitionProcedure procedure)
protected void removeRegionInTransition(RegionStates.RegionStateNode regionNode, RegionTransitionProcedure procedure)
public boolean hasRegionsInTransition()
public boolean isRegionInTransition(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public RegionTransitionProcedure getRegionTransitionProcedure(org.apache.hadoop.hbase.client.RegionInfo hri)
hri, return it else null.public org.apache.hadoop.hbase.master.RegionState getRegionTransitionState(org.apache.hadoop.hbase.client.RegionInfo hri)
public List<RegionStates.RegionStateNode> getRegionsInTransition()
public int getRegionsInTransitionCount()
public List<org.apache.hadoop.hbase.master.RegionState> getRegionsStateInTransition()
public SortedSet<org.apache.hadoop.hbase.master.RegionState> getRegionsInTransitionOrderedByTimestamp()
public void addToOfflineRegions(RegionStates.RegionStateNode regionNode)
public void removeFromOfflineRegions(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public RegionStates.RegionFailedOpen addToFailedOpen(RegionStates.RegionStateNode regionNode)
public RegionStates.RegionFailedOpen getFailedOpen(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public void removeFromFailedOpen(org.apache.hadoop.hbase.client.RegionInfo regionInfo)
public List<org.apache.hadoop.hbase.master.RegionState> getRegionFailedOpen()
public void removeServer(org.apache.hadoop.hbase.ServerName serverName)
public RegionStates.ServerStateNode getServerNode(org.apache.hadoop.hbase.ServerName serverName)
public double getAverageLoad()
public boolean isReplicaAvailableForRegion(org.apache.hadoop.hbase.client.RegionInfo info)
public RegionStates.ServerStateNode removeRegionFromServer(org.apache.hadoop.hbase.ServerName serverName, RegionStates.RegionStateNode regionNode)
public static String regionNamesToString(Collection<byte[]> regions)
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.