org.apache.hadoop.hbase.master
Class RegionState

java.lang.Object
  extended by org.apache.hadoop.hbase.master.RegionState

@InterfaceAudience.Private
public class RegionState
extends Object

State of a Region while undergoing transitions. Region state cannot be modified except the stamp field. So it is almost immutable.


Nested Class Summary
static class RegionState.State
           
 
Constructor Summary
RegionState()
           
RegionState(HRegionInfo region, RegionState.State state)
           
RegionState(HRegionInfo region, RegionState.State state, long stamp, ServerName serverName)
           
RegionState(HRegionInfo region, RegionState.State state, ServerName serverName)
           
 
Method Summary
 ClusterStatusProtos.RegionState convert()
          Convert a RegionState to an HBaseProtos.RegionState
static RegionState convert(ClusterStatusProtos.RegionState proto)
          Convert a protobuf HBaseProtos.RegionState to a RegionState
 boolean equals(Object obj)
          Check if two states are the same, except timestamp
 HRegionInfo getRegion()
           
 ServerName getServerName()
           
 long getStamp()
           
 RegionState.State getState()
           
 int hashCode()
          Don't count timestamp in hash code calculation
 boolean isClosed()
           
 boolean isClosing()
           
 boolean isFailedClose()
           
 boolean isFailedOpen()
           
 boolean isMerged()
           
 boolean isMerging()
           
 boolean isMergingNew()
           
 boolean isOffline()
           
 boolean isOnServer(ServerName sn)
           
 boolean isOpened()
           
 boolean isOpening()
           
 boolean isOpenOrMergingNewOnServer(ServerName sn)
           
 boolean isOpenOrMergingOnServer(ServerName sn)
           
 boolean isOpenOrSplittingNewOnServer(ServerName sn)
           
 boolean isOpenOrSplittingOnServer(ServerName sn)
           
 boolean isPendingClose()
           
 boolean isPendingCloseOrClosing()
           
 boolean isPendingCloseOrClosingOnServer(ServerName sn)
           
 boolean isPendingOpen()
           
 boolean isPendingOpenOrOpening()
           
 boolean isPendingOpenOrOpeningOnServer(ServerName sn)
           
 boolean isReadyToOffline()
          Check if a region state can transition to offline
 boolean isReadyToOnline()
          Check if a region state can transition to online
 boolean isSplit()
           
 boolean isSplitting()
           
 boolean isSplittingNew()
           
 boolean isUnassignable()
          Check if a region state is one of offline states that can't transition to pending_close/closing (unassign/offline)
static boolean isUnassignable(RegionState.State state)
          Check if a region state is one of offline states that can't transition to pending_close/closing (unassign/offline)
protected  void setTimestamp(long timestamp)
           
 String toDescriptiveString()
          A slower (but more easy-to-read) stringification
 String toString()
           
 void updateTimestampToNow()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RegionState

public RegionState()

RegionState

public RegionState(HRegionInfo region,
                   RegionState.State state)

RegionState

public RegionState(HRegionInfo region,
                   RegionState.State state,
                   ServerName serverName)

RegionState

public RegionState(HRegionInfo region,
                   RegionState.State state,
                   long stamp,
                   ServerName serverName)
Method Detail

updateTimestampToNow

public void updateTimestampToNow()

getState

public RegionState.State getState()

getStamp

public long getStamp()

getRegion

public HRegionInfo getRegion()

getServerName

public ServerName getServerName()

isClosing

public boolean isClosing()

isClosed

public boolean isClosed()

isPendingClose

public boolean isPendingClose()

isOpening

public boolean isOpening()

isOpened

public boolean isOpened()

isPendingOpen

public boolean isPendingOpen()

isOffline

public boolean isOffline()

isSplitting

public boolean isSplitting()

isSplit

public boolean isSplit()

isSplittingNew

public boolean isSplittingNew()

isFailedOpen

public boolean isFailedOpen()

isFailedClose

public boolean isFailedClose()

isMerging

public boolean isMerging()

isMerged

public boolean isMerged()

isMergingNew

public boolean isMergingNew()

isOpenOrMergingOnServer

public boolean isOpenOrMergingOnServer(ServerName sn)

isOpenOrMergingNewOnServer

public boolean isOpenOrMergingNewOnServer(ServerName sn)

isOpenOrSplittingOnServer

public boolean isOpenOrSplittingOnServer(ServerName sn)

isOpenOrSplittingNewOnServer

public boolean isOpenOrSplittingNewOnServer(ServerName sn)

isPendingOpenOrOpeningOnServer

public boolean isPendingOpenOrOpeningOnServer(ServerName sn)

isPendingOpenOrOpening

public boolean isPendingOpenOrOpening()

isPendingCloseOrClosingOnServer

public boolean isPendingCloseOrClosingOnServer(ServerName sn)

isPendingCloseOrClosing

public boolean isPendingCloseOrClosing()

isOnServer

public boolean isOnServer(ServerName sn)

isReadyToOffline

public boolean isReadyToOffline()
Check if a region state can transition to offline


isReadyToOnline

public boolean isReadyToOnline()
Check if a region state can transition to online


isUnassignable

public boolean isUnassignable()
Check if a region state is one of offline states that can't transition to pending_close/closing (unassign/offline)


isUnassignable

public static boolean isUnassignable(RegionState.State state)
Check if a region state is one of offline states that can't transition to pending_close/closing (unassign/offline)


toString

public String toString()
Overrides:
toString in class Object

toDescriptiveString

public String toDescriptiveString()
A slower (but more easy-to-read) stringification


convert

public ClusterStatusProtos.RegionState convert()
Convert a RegionState to an HBaseProtos.RegionState

Returns:
the converted HBaseProtos.RegionState

convert

public static RegionState convert(ClusterStatusProtos.RegionState proto)
Convert a protobuf HBaseProtos.RegionState to a RegionState

Returns:
the RegionState

setTimestamp

protected void setTimestamp(long timestamp)

equals

public boolean equals(Object obj)
Check if two states are the same, except timestamp

Overrides:
equals in class Object

hashCode

public int hashCode()
Don't count timestamp in hash code calculation

Overrides:
hashCode in class Object


Copyright © 2015 The Apache Software Foundation. All Rights Reserved.