org.apache.hadoop.hbase.regionserver
Class HRegionServer

java.lang.Object
  extended by org.apache.hadoop.hbase.regionserver.HRegionServer
All Implemented Interfaces:
Runnable, HConstants, HBaseRPCErrorHandler, HBaseRPCProtocolVersion, HRegionInterface, org.apache.hadoop.ipc.VersionedProtocol
Direct Known Subclasses:
TransactionalRegionServer

public class HRegionServer
extends Object
implements HConstants, HRegionInterface, HBaseRPCErrorHandler, Runnable

HRegionServer makes a set of HRegions available to clients. It checks in with the HMaster. There are many HRegionServers in a single HBase deployment.


Field Summary
protected  boolean abortRequested
           
protected  HBaseConfiguration conf
           
protected  boolean fsOk
           
protected  boolean isOnline
           
protected  ReentrantReadWriteLock lock
           
protected  HLog log
           
protected  int numRegionsToReport
           
protected  Map<Integer,HRegion> onlineRegions
           
protected  AtomicBoolean quiesced
           
static String REGIONSERVER
          region server process name
protected  AtomicBoolean safeMode
           
protected  HServerInfo serverInfo
           
protected  AtomicBoolean stopRequested
           
protected  int threadWakeFrequency
           
 
Fields inherited from interface org.apache.hadoop.hbase.HConstants
ALL_META_COLUMNS, ALL_VERSIONS, COL_REGIONINFO, COL_REGIONINFO_ARRAY, COL_SERVER, COL_SPLITA, COL_SPLITB, COL_STARTCODE, COLUMN_FAMILY, COLUMN_FAMILY_ARRAY, COLUMN_FAMILY_HISTORIAN, COLUMN_FAMILY_HISTORIAN_STR, COLUMN_FAMILY_STR, DEFAULT_HOST, DEFAULT_MASTER_ADDRESS, DEFAULT_MASTER_INFOPORT, DEFAULT_MASTER_PORT, DEFAULT_MAX_FILE_SIZE, DEFAULT_NUMBER_CONCURRENT_LOG_READS, DEFAULT_NUMBER_LOG_WRITER_THREAD, DEFAULT_REGION_SERVER_CLASS, DEFAULT_REGIONSERVER_ADDRESS, DEFAULT_REGIONSERVER_INFOPORT, DEFAULT_SIZE_RESERVATION_BLOCK, EMPTY_BYTE_ARRAY, EMPTY_END_ROW, EMPTY_START_ROW, FILE_SYSTEM_VERSION, FOREVER, HBASE_CLIENT_RETRIES_NUMBER_KEY, HBASE_DIR, HREGION_COMPACTIONDIR_NAME, HREGION_LOGDIR_NAME, HREGION_OLDLOGFILE_NAME, IN_MEMORY, LAST_ROW, LATEST_TIMESTAMP, MAJOR_COMPACTION_PERIOD, MASTER_ADDRESS, MAX_ROW_LENGTH, META_ROW_DELIMITER, META_TABLE_NAME, MODIFY_CLOSE_REGION, MODIFY_TABLE_COMPACT, MODIFY_TABLE_FLUSH, MODIFY_TABLE_MAJOR_COMPACT, MODIFY_TABLE_SET_HTD, MODIFY_TABLE_SPLIT, NAME, NINES, REGION_SERVER_CLASS, REGION_SERVER_IMPL, REGIONSERVER_ADDRESS, RETRY_BACKOFF, ROOT_TABLE_NAME, THREAD_WAKE_FREQUENCY, UTF8_ENCODING, VERSION_FILE_NAME, VERSIONS, WEEK_IN_SECONDS, ZERO_L, ZEROES
 
Fields inherited from interface org.apache.hadoop.hbase.ipc.HBaseRPCProtocolVersion
versionID
 
Constructor Summary
HRegionServer(HBaseConfiguration conf)
          Starts a HRegionServer at the default location
HRegionServer(HServerAddress address, HBaseConfiguration conf)
          Starts a HRegionServer at the specified location
 
Method Summary
 void abort()
          Cause the server to exit without closing the regions it is serving, the log it is using and without notifying the master.
protected  void addProcessingMessage(HRegionInfo hri)
           
protected  long addRowLock(Integer r, HRegion region)
           
protected  long addScanner(InternalScanner s)
           
 void batchUpdate(byte[] regionName, BatchUpdate b, long lockId)
          Applies a batch of updates via one RPC
 int batchUpdates(byte[] regionName, BatchUpdate[] b)
          Applies a batch of updates via one RPC for many rows
 boolean checkAndSave(byte[] regionName, BatchUpdate b, HbaseMapWritable<byte[],byte[]> expectedValues)
          Applies a batch of updates to one row atomically via one RPC if the columns specified in expectedValues match the given values in expectedValues
protected  boolean checkFileSystem()
          Checks to see if the file system is still accessible.
 boolean checkOOME(Throwable e)
          Take actions on the event of an OutOfMemoryError.
protected  void checkOpen()
          Called to verify that this server is up and running.
 void close(long scannerId)
          Close a scanner
protected  void closeRegion(HRegionInfo hri, boolean reportWhenCompleted)
           
 HServerLoad.RegionLoad createRegionLoad(byte[] regionName)
           
 void deleteAll(byte[] regionName, byte[] row, byte[] column, long timestamp, long lockId)
          Delete all cells that match the passed row and column and whose timestamp is equal-to or older than the passed timestamp.
 void deleteAll(byte[] regionName, byte[] row, long timestamp, long lockId)
          Delete all cells that match the passed row and whose timestamp is equal-to or older than the passed timestamp.
 void deleteAllByRegex(byte[] regionName, byte[] row, String colRegex, long timestamp, long lockId)
          Delete all cells that match the passed row & the column regex and whose timestamp is equal-to or older than the passed timestamp.
 void deleteFamily(byte[] regionName, byte[] row, byte[] family, long timestamp, long lockId)
          Delete all cells for a row with matching column family with timestamps less than or equal to timestamp.
 void deleteFamilyByRegex(byte[] regionName, byte[] row, String familyRegex, long timestamp, long lockId)
          Delete all cells for a row with matching column family regex with timestamps less than or equal to timestamp.
protected static void doMain(String[] args, Class<? extends HRegionServer> regionServerClass)
          Do class main.
protected  void doMetrics()
           
 boolean exists(byte[] regionName, byte[] row, byte[] column, long timestamp, long lockId)
          Returns true if any cells exist for the given coordinate.
 Cell[] get(byte[] regionName, byte[] row, byte[] column, long timestamp, int numVersions)
          Get the specified number of versions of the specified row and column with the specified timestamp.
 RowResult getClosestRowBefore(byte[] regionName, byte[] row, byte[] columnFamily)
          Return all the data for the row that matches row exactly, or the one that immediately preceeds it.
 HBaseConfiguration getConfiguration()
           
 SortedMap<Long,HRegion> getCopyOfOnlineRegionsSortedBySize()
           
protected  org.apache.hadoop.fs.FileSystem getFileSystem()
           
 FlushRequester getFlushRequester()
           
 long getGlobalMemcacheSize()
          Return the total size of all memcaches in every region.
 InfoServer getInfoServer()
           
protected  Leases getLeases()
           
 RegionServerMetrics getMetrics()
           
protected  HRegionInfo[] getMostLoadedRegions()
          Get the top N most loaded regions this server is serving so we can tell the master which regions it can reallocate if we're overloaded.
 HRegion getOnlineRegion(byte[] regionName)
           
 Collection<HRegion> getOnlineRegions()
           
protected  List<HMsg> getOutboundMsgs()
           
 long getProtocolVersion(String protocol, long clientVersion)
           
protected  HRegion getRegion(byte[] regionName)
          Protected utility method for safely obtaining an HRegion handle.
 HRegionInfo getRegionInfo(byte[] regionName)
          Get metainfo about an HRegion
protected  Set<HRegion> getRegionsToCheck()
           
 AtomicInteger getRequestCount()
           
protected  org.apache.hadoop.fs.Path getRootDir()
           
 RowResult getRow(byte[] regionName, byte[] row, byte[][] columns, long ts, int numVersions, long lockId)
          Get selected columns for the specified row at a given timestamp.
 HServerInfo getServerInfo()
           
 SortedSet<HRegionInfo> getSortedOnlineRegionInfos()
           
 long incrementColumnValue(byte[] regionName, byte[] row, byte[] column, long amount)
          Atomically increments a column value.
protected  void init(org.apache.hadoop.io.MapWritable c)
           
protected  HRegion instantiateRegion(HRegionInfo regionInfo)
           
 boolean isInSafeMode()
           
 boolean isOnline()
          Report the status of the server.
 boolean isStopRequested()
           
 long lockRow(byte[] regionName, byte[] row)
          Opens a remote row lock.
static void main(String[] args)
           
 RowResult next(long scannerId)
          Get the next set of values
 RowResult[] next(long scannerId, int nbRows)
          Get the next set of values
 long openScanner(byte[] regionName, byte[][] cols, byte[] firstRow, long timestamp, RowFilterInterface filter)
          Opens a remote scanner with a RowFilter.
 void run()
          The HRegionServer sticks in this loop until closed.
 void runThread(Thread t, long dfsShutdownWait)
          Run and wait on passed thread in HRS context.
 Thread setHDFSShutdownThreadOnExit(Thread t)
          Set the hdfs shutdown thread to run on exit.
 void stop()
          Sets a flag that will cause all the HRegionServer threads to shut down in an orderly fashion.
 void unlockRow(byte[] regionName, long lockId)
          Releases a remote row lock.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

stopRequested

protected final AtomicBoolean stopRequested

quiesced

protected final AtomicBoolean quiesced

safeMode

protected final AtomicBoolean safeMode

abortRequested

protected volatile boolean abortRequested

fsOk

protected volatile boolean fsOk

serverInfo

protected final HServerInfo serverInfo

conf

protected final HBaseConfiguration conf

onlineRegions

protected final Map<Integer,HRegion> onlineRegions

lock

protected final ReentrantReadWriteLock lock

threadWakeFrequency

protected final int threadWakeFrequency

numRegionsToReport

protected final int numRegionsToReport

REGIONSERVER

public static final String REGIONSERVER
region server process name

See Also:
Constant Field Values

log

protected volatile HLog log

isOnline

protected volatile boolean isOnline
Constructor Detail

HRegionServer

public HRegionServer(HBaseConfiguration conf)
              throws IOException
Starts a HRegionServer at the default location

Parameters:
conf -
Throws:
IOException

HRegionServer

public HRegionServer(HServerAddress address,
                     HBaseConfiguration conf)
              throws IOException
Starts a HRegionServer at the specified location

Parameters:
address -
conf -
Throws:
IOException
Method Detail

run

public void run()
The HRegionServer sticks in this loop until closed. It repeatedly checks in with the HMaster, sending heartbeats & reports, and receiving HRegion load/unload instructions.

Specified by:
run in interface Runnable

runThread

public void runThread(Thread t,
                      long dfsShutdownWait)
Run and wait on passed thread in HRS context.

Parameters:
t -
dfsShutdownWait -

setHDFSShutdownThreadOnExit

public Thread setHDFSShutdownThreadOnExit(Thread t)
Set the hdfs shutdown thread to run on exit. Pass null to disable running of the shutdown test. Needed by tests.

Parameters:
t - Thread to run. Pass null to disable tests.
Returns:
Previous occupant of the shutdown thread position.

init

protected void init(org.apache.hadoop.io.MapWritable c)
             throws IOException
Throws:
IOException

createRegionLoad

public HServerLoad.RegionLoad createRegionLoad(byte[] regionName)
                                        throws IOException
Parameters:
regionName -
Returns:
An instance of RegionLoad.
Throws:
IOException

checkOOME

public boolean checkOOME(Throwable e)
Description copied from interface: HBaseRPCErrorHandler
Take actions on the event of an OutOfMemoryError.

Specified by:
checkOOME in interface HBaseRPCErrorHandler
Parameters:
e - the throwable
Returns:
if the server should be shut down

checkFileSystem

protected boolean checkFileSystem()
Checks to see if the file system is still accessible. If not, sets abortRequested and stopRequested

Returns:
false if file system is not available

isOnline

public boolean isOnline()
Report the status of the server. A server is online once all the startup is completed (setting up filesystem, starting service threads, etc.). This method is designed mostly to be useful in tests.

Returns:
true if online, false if not.

doMetrics

protected void doMetrics()

getMetrics

public RegionServerMetrics getMetrics()
Returns:
Region server metrics instance.

stop

public void stop()
Sets a flag that will cause all the HRegionServer threads to shut down in an orderly fashion. Used by unit tests.


abort

public void abort()
Cause the server to exit without closing the regions it is serving, the log it is using and without notifying the master. Used unit testing and on catastrophic events such as HDFS is yanked out from under hbase or we OOME.


instantiateRegion

protected HRegion instantiateRegion(HRegionInfo regionInfo)
                             throws IOException
Throws:
IOException

addProcessingMessage

protected void addProcessingMessage(HRegionInfo hri)

closeRegion

protected void closeRegion(HRegionInfo hri,
                           boolean reportWhenCompleted)
                    throws IOException
Throws:
IOException

getRegionInfo

public HRegionInfo getRegionInfo(byte[] regionName)
                          throws NotServingRegionException
Description copied from interface: HRegionInterface
Get metainfo about an HRegion

Specified by:
getRegionInfo in interface HRegionInterface
Parameters:
regionName - name of the region
Returns:
HRegionInfo object for region
Throws:
NotServingRegionException

get

public Cell[] get(byte[] regionName,
                  byte[] row,
                  byte[] column,
                  long timestamp,
                  int numVersions)
           throws IOException
Description copied from interface: HRegionInterface
Get the specified number of versions of the specified row and column with the specified timestamp.

Specified by:
get in interface HRegionInterface
Parameters:
regionName - region name
row - row key
column - column key
timestamp - timestamp
numVersions - number of versions to return
Returns:
array of values
Throws:
IOException

getRow

public RowResult getRow(byte[] regionName,
                        byte[] row,
                        byte[][] columns,
                        long ts,
                        int numVersions,
                        long lockId)
                 throws IOException
Description copied from interface: HRegionInterface
Get selected columns for the specified row at a given timestamp.

Specified by:
getRow in interface HRegionInterface
Parameters:
regionName - region name
row - row key
columns - columns to get
ts - time stamp
numVersions - number of versions
lockId - lock id
Returns:
map of values
Throws:
IOException

getClosestRowBefore

public RowResult getClosestRowBefore(byte[] regionName,
                                     byte[] row,
                                     byte[] columnFamily)
                              throws IOException
Description copied from interface: HRegionInterface
Return all the data for the row that matches row exactly, or the one that immediately preceeds it.

Specified by:
getClosestRowBefore in interface HRegionInterface
Parameters:
regionName - region name
row - row key
columnFamily - Column family to look for row in.
Returns:
map of values
Throws:
IOException

next

public RowResult next(long scannerId)
               throws IOException
Description copied from interface: HRegionInterface
Get the next set of values

Specified by:
next in interface HRegionInterface
Parameters:
scannerId - clientId passed to openScanner
Returns:
map of values
Throws:
IOException

next

public RowResult[] next(long scannerId,
                        int nbRows)
                 throws IOException
Description copied from interface: HRegionInterface
Get the next set of values

Specified by:
next in interface HRegionInterface
Parameters:
scannerId - clientId passed to openScanner
nbRows - the number of rows to fetch
Returns:
map of values
Throws:
IOException

batchUpdate

public void batchUpdate(byte[] regionName,
                        BatchUpdate b,
                        long lockId)
                 throws IOException
Description copied from interface: HRegionInterface
Applies a batch of updates via one RPC

Specified by:
batchUpdate in interface HRegionInterface
Parameters:
regionName - name of the region to update
b - BatchUpdate
lockId - lock id
Throws:
IOException

batchUpdates

public int batchUpdates(byte[] regionName,
                        BatchUpdate[] b)
                 throws IOException
Description copied from interface: HRegionInterface
Applies a batch of updates via one RPC for many rows

Specified by:
batchUpdates in interface HRegionInterface
Parameters:
regionName - name of the region to update
b - BatchUpdate[]
Returns:
number of updates applied
Throws:
IOException

checkAndSave

public boolean checkAndSave(byte[] regionName,
                            BatchUpdate b,
                            HbaseMapWritable<byte[],byte[]> expectedValues)
                     throws IOException
Description copied from interface: HRegionInterface
Applies a batch of updates to one row atomically via one RPC if the columns specified in expectedValues match the given values in expectedValues

Specified by:
checkAndSave in interface HRegionInterface
Parameters:
regionName - name of the region to update
b - BatchUpdate
expectedValues - map of column names to expected data values.
Returns:
true if update was applied
Throws:
IOException

openScanner

public long openScanner(byte[] regionName,
                        byte[][] cols,
                        byte[] firstRow,
                        long timestamp,
                        RowFilterInterface filter)
                 throws IOException
Description copied from interface: HRegionInterface
Opens a remote scanner with a RowFilter.

Specified by:
openScanner in interface HRegionInterface
Parameters:
regionName - name of region to scan
cols - columns to scan. If column name is a column family, all columns of the specified column family are returned. Its also possible to pass a regex for column family name. A column name is judged to be regex if it contains at least one of the following characters: \+|^&*$[]]}{)(.
firstRow - starting row to scan
timestamp - only return values whose timestamp is <= this value
filter - RowFilter for filtering results at the row-level.
Returns:
scannerId scanner identifier used in other calls
Throws:
IOException

addScanner

protected long addScanner(InternalScanner s)
                   throws Leases.LeaseStillHeldException
Throws:
Leases.LeaseStillHeldException

close

public void close(long scannerId)
           throws IOException
Description copied from interface: HRegionInterface
Close a scanner

Specified by:
close in interface HRegionInterface
Parameters:
scannerId - the scanner id returned by openScanner
Throws:
IOException

deleteAll

public void deleteAll(byte[] regionName,
                      byte[] row,
                      byte[] column,
                      long timestamp,
                      long lockId)
               throws IOException
Description copied from interface: HRegionInterface
Delete all cells that match the passed row and column and whose timestamp is equal-to or older than the passed timestamp.

Specified by:
deleteAll in interface HRegionInterface
Parameters:
regionName - region name
row - row key
column - column key
timestamp - Delete all entries that have this timestamp or older
lockId - lock id
Throws:
IOException

deleteAll

public void deleteAll(byte[] regionName,
                      byte[] row,
                      long timestamp,
                      long lockId)
               throws IOException
Description copied from interface: HRegionInterface
Delete all cells that match the passed row and whose timestamp is equal-to or older than the passed timestamp.

Specified by:
deleteAll in interface HRegionInterface
Parameters:
regionName - region name
row - row key
timestamp - Delete all entries that have this timestamp or older
lockId - lock id
Throws:
IOException

deleteAllByRegex

public void deleteAllByRegex(byte[] regionName,
                             byte[] row,
                             String colRegex,
                             long timestamp,
                             long lockId)
                      throws IOException
Description copied from interface: HRegionInterface
Delete all cells that match the passed row & the column regex and whose timestamp is equal-to or older than the passed timestamp.

Specified by:
deleteAllByRegex in interface HRegionInterface
Throws:
IOException

deleteFamily

public void deleteFamily(byte[] regionName,
                         byte[] row,
                         byte[] family,
                         long timestamp,
                         long lockId)
                  throws IOException
Description copied from interface: HRegionInterface
Delete all cells for a row with matching column family with timestamps less than or equal to timestamp.

Specified by:
deleteFamily in interface HRegionInterface
Parameters:
regionName - The name of the region to operate on
row - The row to operate on
family - The column family to match
timestamp - Timestamp to match
lockId - lock id
Throws:
IOException

deleteFamilyByRegex

public void deleteFamilyByRegex(byte[] regionName,
                                byte[] row,
                                String familyRegex,
                                long timestamp,
                                long lockId)
                         throws IOException
Description copied from interface: HRegionInterface
Delete all cells for a row with matching column family regex with timestamps less than or equal to timestamp.

Specified by:
deleteFamilyByRegex in interface HRegionInterface
Parameters:
regionName - The name of the region to operate on
row - The row to operate on
familyRegex - column family regex
timestamp - Timestamp to match
lockId - lock id
Throws:
IOException

exists

public boolean exists(byte[] regionName,
                      byte[] row,
                      byte[] column,
                      long timestamp,
                      long lockId)
               throws IOException
Description copied from interface: HRegionInterface
Returns true if any cells exist for the given coordinate.

Specified by:
exists in interface HRegionInterface
Parameters:
regionName - The name of the region
row - The row
column - The column, or null for any
timestamp - The timestamp, or LATEST_TIMESTAMP for any
lockId - lock id
Returns:
true if the row exists, false otherwise
Throws:
IOException

lockRow

public long lockRow(byte[] regionName,
                    byte[] row)
             throws IOException
Description copied from interface: HRegionInterface
Opens a remote row lock.

Specified by:
lockRow in interface HRegionInterface
Parameters:
regionName - name of region
row - row to lock
Returns:
lockId lock identifier
Throws:
IOException

addRowLock

protected long addRowLock(Integer r,
                          HRegion region)
                   throws Leases.LeaseStillHeldException
Throws:
Leases.LeaseStillHeldException

unlockRow

public void unlockRow(byte[] regionName,
                      long lockId)
               throws IOException
Description copied from interface: HRegionInterface
Releases a remote row lock.

Specified by:
unlockRow in interface HRegionInterface
lockId - the lock id returned by lockRow
Throws:
IOException

getServerInfo

public HServerInfo getServerInfo()
Returns:
Info on this server.

getInfoServer

public InfoServer getInfoServer()
Returns:
the info server

isStopRequested

public boolean isStopRequested()
Returns:
true if a stop has been requested.

isInSafeMode

public boolean isInSafeMode()
Returns:
true if the region server is in safe mode

getConfiguration

public HBaseConfiguration getConfiguration()
Returns:
the configuration

getOnlineRegions

public Collection<HRegion> getOnlineRegions()
Returns:
Immutable list of this servers regions.

getSortedOnlineRegionInfos

public SortedSet<HRegionInfo> getSortedOnlineRegionInfos()
Returns:
The HRegionInfos from online regions sorted

getCopyOfOnlineRegionsSortedBySize

public SortedMap<Long,HRegion> getCopyOfOnlineRegionsSortedBySize()
Returns:
A new Map of online regions sorted by region size with the first entry being the biggest.

getOnlineRegion

public HRegion getOnlineRegion(byte[] regionName)
Parameters:
regionName -
Returns:
HRegion for the passed regionName or null if named region is not member of the online regions.

getRequestCount

public AtomicInteger getRequestCount()
Returns:
the request count

getFlushRequester

public FlushRequester getFlushRequester()
Returns:
reference to FlushRequester

getRegion

protected HRegion getRegion(byte[] regionName)
                     throws NotServingRegionException
Protected utility method for safely obtaining an HRegion handle.

Parameters:
regionName - Name of online HRegion to return
Returns:
HRegion for regionName
Throws:
NotServingRegionException

getMostLoadedRegions

protected HRegionInfo[] getMostLoadedRegions()
Get the top N most loaded regions this server is serving so we can tell the master which regions it can reallocate if we're overloaded. TODO: actually calculate which regions are most loaded. (Right now, we're just grabbing the first N regions being served regardless of load.)


checkOpen

protected void checkOpen()
                  throws IOException
Called to verify that this server is up and running.

Throws:
IOException

getRegionsToCheck

protected Set<HRegion> getRegionsToCheck()
Returns:
Returns list of non-closed regions hosted on this server. If no regions to check, returns an empty list.

getProtocolVersion

public long getProtocolVersion(String protocol,
                               long clientVersion)
                        throws IOException
Specified by:
getProtocolVersion in interface org.apache.hadoop.ipc.VersionedProtocol
Throws:
IOException

getOutboundMsgs

protected List<HMsg> getOutboundMsgs()
Returns:
Queue to which you can add outbound messages.

getGlobalMemcacheSize

public long getGlobalMemcacheSize()
Return the total size of all memcaches in every region.

Returns:
memcache size in bytes

getLeases

protected Leases getLeases()
Returns:
Return the leases.

getRootDir

protected org.apache.hadoop.fs.Path getRootDir()
Returns:
Return the rootDir.

getFileSystem

protected org.apache.hadoop.fs.FileSystem getFileSystem()
Returns:
Return the fs.

doMain

protected static void doMain(String[] args,
                             Class<? extends HRegionServer> regionServerClass)
Do class main.

Parameters:
args -
regionServerClass - HRegionServer to instantiate.

main

public static void main(String[] args)
Parameters:
args -

incrementColumnValue

public long incrementColumnValue(byte[] regionName,
                                 byte[] row,
                                 byte[] column,
                                 long amount)
                          throws IOException
Atomically increments a column value. If the column value isn't long-like, this could throw an exception.

Specified by:
incrementColumnValue in interface HRegionInterface
Returns:
new incremented column value
Throws:
IOException


Copyright © 2008 The Apache Software Foundation