You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by mb...@apache.org on 2012/09/12 02:34:09 UTC

svn commit: r1383697 [2/3] - in /hbase/branches/0.89-fb: ./ src/main/java/org/apache/hadoop/hbase/thrift/ src/main/java/org/apache/hadoop/hbase/thrift/generated/ src/main/resources/org/apache/hadoop/hbase/thrift/ src/test/java/org/apache/hadoop/hbase/t...

Modified: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/generated/Hbase.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/generated/Hbase.java?rev=1383697&r1=1383696&r2=1383697&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/generated/Hbase.java (original)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/generated/Hbase.java Wed Sep 12 00:34:08 2012
@@ -32,71 +32,124 @@ public class Hbase {
   public interface Iface {
 
     /**
-     * Brings a table on-line (enables it)
+     * Atomically increment the column value specified.  Returns the next value post increment.
      *
-     * @param tableName name of the table
+     * @param tableName name of table
+     * 
+     * @param row row to increment
+     * 
+     * @param column name of column
+     * 
+     * @param value amount to increment by
      */
-    public void enableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+    public long atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long value) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Disables a table (takes it off-line) If it is being served, the master
-     * will tell the servers to stop serving it.
+     * Applies a list of mutations to a single row only if the value for
+     * row, cf[:qualifier] equals valueCheck
      *
-     * @param tableName name of the table
+     * Accepts null or '' for valueCheck, in which case entry for
+     * row, cf[:qualifier] must not exist.
+     * 
+     * @return bool whether the check passed and mutations were applied
+     * 
+     * @param tableName name of table
+     * 
+     * @param row row key
+     * 
+     * @param columnCheck
+     * @param valueCheck
+     * @param mutations list of mutation commands
+     * 
+     * @param attributes Put attributes
      */
-    public void disableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+    public boolean checkAndMutateRow(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * @return true if table is on-line
+     * Same as above, but the puts and deletes are added at specified timestamp.
      *
-     * @param tableName name of the table to check
+     * NOTE: No way to specify what timerange to query for the checked value;
+     * it will look for most recent entry (the default Get behavior).
+     * 
+     * @param tableName name of table
+     * 
+     * @param row row key
+     * 
+     * @param columnCheck
+     * @param valueCheck
+     * @param mutations list of mutation commands
+     * 
+     * @param timestamp timestamp
+     * 
+     * @param attributes Put attributes
      */
-    public boolean isTableEnabled(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+    public boolean checkAndMutateRowTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     public void compact(ByteBuffer tableNameOrRegionName) throws IOError, org.apache.thrift.TException;
 
-    public void majorCompact(ByteBuffer tableNameOrRegionName) throws IOError, org.apache.thrift.TException;
+    /**
+     * Create a table with the specified column families.  The name
+     * field for each ColumnDescriptor must be set and must end in a
+     * colon (:). All other fields are optional and will get default
+     * values if not explicitly specified.
+     * 
+     * @throws IllegalArgument if an input parameter is invalid
+     * 
+     * @throws AlreadyExists if the table name already exists
+     * 
+     * @param tableName name of table to create
+     * 
+     * @param columnFamilies list of column family descriptors
+     */
+    public void createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies) throws IOError, IllegalArgument, AlreadyExists, org.apache.thrift.TException;
 
     /**
-     * List all the userspace tables.
+     * Delete all cells that match the passed row and column.
      *
-     * @return returns a list of names
+     * @param tableName name of table
+     * 
+     * @param row Row to update
+     * 
+     * @param column name of column whose value is to be deleted
      */
-    public List<ByteBuffer> getTableNames() throws IOError, org.apache.thrift.TException;
+    public void deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column) throws IOError, org.apache.thrift.TException;
 
     /**
-     * List all the column families assoicated with a table.
+     * Completely delete the row's cells.
      *
-     * @return list of column family descriptors
+     * @param tableName name of table
      *
-     * @param tableName table name
+     * @param row key of the row to be completely deleted.
+     * 
+     * @param attributes Delete attributes
      */
-    public Map<ByteBuffer,ColumnDescriptor> getColumnDescriptors(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+    public void deleteAllRow(ByteBuffer tableName, ByteBuffer row, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, org.apache.thrift.TException;
 
     /**
-     * List the regions associated with a table.
+     * Completely delete the row's cells marked with a timestamp
+     * equal-to or older than the passed timestamp.
      *
-     * @return list of region descriptors
+     * @param tableName name of table
      *
-     * @param tableName table name
+     * @param row key of the row to be completely deleted.
+     * 
+     * @param timestamp timestamp
      */
-    public List<TRegionInfo> getTableRegions(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+    public void deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Create a table with the specified column families.  The name
-     * field for each ColumnDescriptor must be set and must end in a
-     * colon (:). All other fields are optional and will get default
-     * values if not explicitly specified.
+     * Delete all cells that match the passed row and column and whose
+     * timestamp is equal-to or older than the passed timestamp.
      *
-     * @throws IllegalArgument if an input parameter is invalid
+     * @param tableName name of table
      *
-     * @throws AlreadyExists if the table name already exists
+     * @param row Row to update
      *
-     * @param tableName name of table to create
+     * @param column name of column whose value is to be deleted
      *
-     * @param columnFamilies list of column family descriptors
+     * @param timestamp timestamp
      */
-    public void createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies) throws IOError, IllegalArgument, AlreadyExists, org.apache.thrift.TException;
+    public void deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
      * Deletes a table
@@ -109,6 +162,21 @@ public class Hbase {
     public void deleteTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
 
     /**
+     * Disables a table (takes it off-line) If it is being served, the master
+     * will tell the servers to stop serving it.
+     * 
+     * @param tableName name of the table
+     */
+    public void disableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+
+    /**
+     * Brings a table on-line (enables it)
+     * 
+     * @param tableName name of the table
+     */
+    public void enableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+
+    /**
      * Get a single TCell for the specified table, row, and column at the
      * latest timestamp. Returns an empty list if no such value exists.
      *
@@ -123,39 +191,23 @@ public class Hbase {
     public List<TCell> get(ByteBuffer tableName, ByteBuffer row, ByteBuffer column) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get the specified number of versions for the specified table,
-     * row, and column.
-     *
-     * @return list of cells for specified row/column
+     * List all the column families associated with a table.
      *
-     * @param tableName name of table
-     *
-     * @param row row key
-     *
-     * @param column column name
+     * @return list of column family descriptors
      *
-     * @param numVersions number of versions to retrieve
+     * @param tableName table name
      */
-    public List<TCell> getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions) throws IOError, org.apache.thrift.TException;
+    public Map<ByteBuffer,ColumnDescriptor> getColumnDescriptors(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get the specified number of versions for the specified table,
-     * row, and column.  Only versions less than or equal to the specified
-     * timestamp will be returned.
-     *
-     * @return list of cells for specified row/column
+     * Get the regininfo for the specified row. It scans
+     * the metatable to find region's start and end keys.
      *
-     * @param tableName name of table
+     * @return value for specified row/column
      *
      * @param row row key
-     *
-     * @param column column name
-     *
-     * @param timestamp timestamp
-     *
-     * @param numVersions number of versions to retrieve
      */
-    public List<TCell> getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions) throws IOError, org.apache.thrift.TException;
+    public TRegionInfo getRegionInfo(ByteBuffer row) throws IOError, org.apache.thrift.TException;
 
     /**
      * Get all the data for the specified table and row at the latest
@@ -170,36 +222,41 @@ public class Hbase {
     public List<TRowResult> getRow(ByteBuffer tableName, ByteBuffer row) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get the specified columns for the specified table and row at the latest
+     * Get all the data for the specified table and row at the specified
      * timestamp. Returns an empty list if the row does not exist.
      *
      * @return TRowResult containing the row and map of columns to TCells
      *
-     * @param tableName name of table
+     * @param tableName name of the table
      *
      * @param row row key
      *
-     * @param columns List of columns to return, null for all columns
+     * @param timestamp timestamp
      */
-    public List<TRowResult> getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get all the data for the specified table and row at the specified
-     * timestamp. Returns an empty list if the row does not exist.
+     * Get the columns with the specified prefix for the specified table and
+     * row at the latest timestamp. Returns an empty list if the row does not
+     * exist.
      *
      * @return TRowResult containing the row and map of columns to TCells
      *
-     * @param tableName name of the table
+     * @param tableName name of table
      *
      * @param row row key
      *
-     * @param timestamp timestamp
+     * @param prefix column prefix, null for all columns
+     * family name can be specified as <family>:<qualifier prefix>
+     * If only <qualifier prefix> provided then all families are
+     * searched
      */
-    public List<TRowResult> getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get the specified columns for the specified table and row at the specified
-     * timestamp. Returns an empty list if the row does not exist.
+     * Get the columns with the specified prefix for the specified table and
+     * row at the specified timestamp. Returns an empty list if the row does not
+     * exist.
      *
      * @return TRowResult containing the row and map of columns to TCells
      *
@@ -207,16 +264,18 @@ public class Hbase {
      *
      * @param row row key
      *
-     * @param columns List of columns to return, null for all columns
+     * @param prefix column prefix, null for all columns
+     * family name can be specified as <family>:<qualifier prefix>
+     * If only <qualifier prefix> provided then all families are
+     * searched
      *
      * @param timestamp
      */
-    public List<TRowResult> getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get the columns with the specified prefix for the specified table and
-     * row at the latest timestamp. Returns an empty list if the row does not
-     * exist.
+     * Get the specified columns for the specified table and row at the latest
+     * timestamp. Returns an empty list if the row does not exist.
      *
      * @return TRowResult containing the row and map of columns to TCells
      *
@@ -224,17 +283,13 @@ public class Hbase {
      *
      * @param row row key
      *
-     * @param prefix column prefix, null for all columns
-     * family name can be specified as <family>:<qualifier prefix>
-     * If only <qualifier prefix> provided then all families are
-     * searched
+     * @param columns List of columns to return, null for all columns
      */
-    public List<TRowResult> getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get the columns with the specified prefix for the specified table and
-     * row at the specified timestamp. Returns an empty list if the row does not
-     * exist.
+     * Get the specified columns for the specified table and row at the specified
+     * timestamp. Returns an empty list if the row does not exist.
      *
      * @return TRowResult containing the row and map of columns to TCells
      *
@@ -242,14 +297,11 @@ public class Hbase {
      *
      * @param row row key
      *
-     * @param prefix column prefix, null for all columns
-     * family name can be specified as <family>:<qualifier prefix>
-     * If only <qualifier prefix> provided then all families are
-     * searched
+     * @param columns List of columns to return, null for all columns
      *
      * @param timestamp
      */
-    public List<TRowResult> getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
      * Get multiple rows with the same columns or timestamps for all.
@@ -298,223 +350,202 @@ public class Hbase {
     public List<TRowResult> getRowsWithColumnsTs(ByteBuffer tableName, List<ByteBuffer> rows, List<ByteBuffer> families, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Apply a series of mutations (updates/deletes) to a row in a
-     * single transaction.  If an exception is thrown, then the
-     * transaction is aborted.  Default current timestamp is used, and
-     * all entries will have an identical timestamp.
+     * List all the userspace tables.
      *
-     * @param tableName name of table
+     * @return returns a list of names
+     */
+    public List<ByteBuffer> getTableNames() throws IOError, org.apache.thrift.TException;
+
+    /**
+     * List the regions associated with a table.
      *
-     * @param row row key
+     * @return list of region descriptors
      *
-     * @param mutations list of mutation commands
+     * @param tableName table name
      */
-    public void mutateRow(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations) throws IOError, IllegalArgument, org.apache.thrift.TException;
+    public List<TRegionInfo> getTableRegions(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Apply a series of mutations (updates/deletes) to a row in a
-     * single transaction.  If an exception is thrown, then the
-     * transaction is aborted.  The specified timestamp is used, and
-     * all entries will have an identical timestamp.
+     * Get the specified number of versions for the specified table,
+     * row, and column.
      *
+     * @return list of cells for specified row/column
+     * 
      * @param tableName name of table
      *
      * @param row row key
      *
-     * @param mutations list of mutation commands
+     * @param column column name
      *
-     * @param timestamp timestamp
+     * @param numVersions number of versions to retrieve
      */
-    public void mutateRowTs(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, long timestamp) throws IOError, IllegalArgument, org.apache.thrift.TException;
+    public List<TCell> getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Apply a series of batches (each a series of mutations on a single row)
-     * in a single transaction.  If an exception is thrown, then the
-     * transaction is aborted.  Default current timestamp is used, and
-     * all entries will have an identical timestamp.
+     * Get the specified number of versions for the specified table,
+     * row, and column.  Only versions less than or equal to the specified
+     * timestamp will be returned.
      *
+     * @return list of cells for specified row/column
+     * 
      * @param tableName name of table
      *
-     * @param rowBatches list of row batches
-     */
-    public void mutateRows(ByteBuffer tableName, List<BatchMutation> rowBatches) throws IOError, IllegalArgument, org.apache.thrift.TException;
-
-    /**
-     * Apply a series of batches (each a series of mutations on a single row)
-     * in a single transaction.  If an exception is thrown, then the
-     * transaction is aborted.  The specified timestamp is used, and
-     * all entries will have an identical timestamp.
-     *
-     * @param tableName name of table
+     * @param row row key
      *
-     * @param rowBatches list of row batches
+     * @param column column name
      *
      * @param timestamp timestamp
+     *
+     * @param numVersions number of versions to retrieve
      */
-    public void mutateRowsTs(ByteBuffer tableName, List<BatchMutation> rowBatches, long timestamp) throws IOError, IllegalArgument, org.apache.thrift.TException;
+    public List<TCell> getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Applies a list of mutations to a single row only if the value for
-     * row, cf[:qualifier] equals valueCheck
-     *
-     * Accepts null or '' for valueCheck, in which case entry for
-     * row, cf[:qualifier] must not exist.
-     *
-     * @return bool whether the check passed and mutations were applied
-     *
-     * @param tableName name of table
-     *
-     * @param row row key
+     * @return true if table is on-line
      *
-     * @param columnCheck
-     * @param valueCheck
-     * @param mutations list of mutation commands
+     * @param tableName name of the table to check
      */
-    public boolean checkAndMutateRow(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations) throws IOError, IllegalArgument, org.apache.thrift.TException;
+    public boolean isTableEnabled(ByteBuffer tableName) throws IOError, org.apache.thrift.TException;
+
+    public void majorCompact(ByteBuffer tableNameOrRegionName) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Same as above, but the puts and deletes are added at specified timestamp.
-     *
-     * NOTE: No way to specify what timerange to query for the checked value;
-     * it will look for most recent entry (the default Get behavior).
+     * Apply a series of mutations (updates/deletes) to a row in a
+     * single transaction.  If an exception is thrown, then the
+     * transaction is aborted.  Default current timestamp is used, and
+     * all entries will have an identical timestamp.
      *
      * @param tableName name of table
      *
      * @param row row key
      *
-     * @param columnCheck
-     * @param valueCheck
      * @param mutations list of mutation commands
      *
-     * @param timestamp timestamp
+     * @param attributes Put attributes
      */
-    public boolean checkAndMutateRowTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, long timestamp) throws IOError, IllegalArgument, org.apache.thrift.TException;
+    public void mutateRow(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Atomically increment the column value specified.  Returns the next value post increment.
+     * Apply a series of mutations (updates/deletes) to a row in a
+     * single transaction.  If an exception is thrown, then the
+     * transaction is aborted.  The specified timestamp is used, and
+     * all entries will have an identical timestamp.
      *
      * @param tableName name of table
      *
-     * @param row row to increment
-     *
-     * @param column name of column
-     *
-     * @param value amount to increment by
-     */
-    public long atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long value) throws IOError, IllegalArgument, org.apache.thrift.TException;
-
-    /**
-     * Delete all cells that match the passed row and column.
+     * @param row row key
      *
-     * @param tableName name of table
+     * @param mutations list of mutation commands
      *
-     * @param row Row to update
+     * @param timestamp timestamp
      *
-     * @param column name of column whose value is to be deleted
+     * @param attributes Put attributes
      */
-    public void deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column) throws IOError, org.apache.thrift.TException;
+    public void mutateRowTs(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Delete all cells that match the passed row and column and whose
-     * timestamp is equal-to or older than the passed timestamp.
+     * Apply a series of batches (each a series of mutations on a single row)
+     * in a single transaction.  If an exception is thrown, then the
+     * transaction is aborted.  Default current timestamp is used, and
+     * all entries will have an identical timestamp.
      *
      * @param tableName name of table
      *
-     * @param row Row to update
-     *
-     * @param column name of column whose value is to be deleted
+     * @param rowBatches list of row batches
      *
-     * @param timestamp timestamp
+     * @param attributes Put attributes
      */
-    public void deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp) throws IOError, org.apache.thrift.TException;
+    public void mutateRows(ByteBuffer tableName, List<BatchMutation> rowBatches, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Completely delete the row's cells.
+     * Asynchronous multi-row mutation call
+     * See mutateRows()
      *
      * @param tableName name of table
      *
-     * @param row key of the row to be completely deleted.
+     * @param rowBatches list of row batches
      */
-    public void deleteAllRow(ByteBuffer tableName, ByteBuffer row) throws IOError, org.apache.thrift.TException;
+    public void mutateRowsAsync(ByteBuffer tableName, List<BatchMutation> rowBatches) throws org.apache.thrift.TException;
 
     /**
-     * Completely delete the row's cells marked with a timestamp
-     * equal-to or older than the passed timestamp.
+     * Apply a series of batches (each a series of mutations on a single row)
+     * in a single transaction.  If an exception is thrown, then the
+     * transaction is aborted.  The specified timestamp is used, and
+     * all entries will have an identical timestamp.
      *
      * @param tableName name of table
      *
-     * @param row key of the row to be completely deleted.
+     * @param rowBatches list of row batches
      *
      * @param timestamp timestamp
+     * 
+     * @param attributes Put attributes
      */
-    public void deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException;
+    public void mutateRowsTs(ByteBuffer tableName, List<BatchMutation> rowBatches, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Get a scanner on the current table starting at the specified row and
-     * ending at the last row in the table.  Return the specified columns.
+     * Asynchronous multi-row mutation call with ts
+     * See mutateRowsTs()
      *
-     * @return scanner id to be used with other scanner procedures
+     * The specified timestamp is used, and
+     * all entries will have an identical timestamp.
      *
      * @param tableName name of table
      *
-     * @param startRow Starting row in table to scan.
-     * Send "" (empty string) to start at the first row.
+     * @param rowBatches list of row batches
      *
-     * @param columns columns to scan. If column name is a column family, all
-     * columns of the specified column family are returned. It's also possible
-     * to pass a regex in the column qualifier.
+     * @param timestamp timestamp
      */
-    public int scannerOpen(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
+    public void mutateRowsTsAsync(ByteBuffer tableName, List<BatchMutation> rowBatches, long timestamp) throws org.apache.thrift.TException;
 
     /**
-     * Get a scanner on the current table, using the Scan instance
-     * for the scan parameters.
+     * Closes the server-state associated with an open scanner.
      *
-     * @param tableName name of table
+     * @throws IllegalArgument if ScannerID is invalid
      *
-     * @param scan Scan instance
+     * @param id id of a scanner returned by scannerOpen
      */
-    public int scannerOpenWithScan(ByteBuffer tableName, TScan scan) throws IOError, org.apache.thrift.TException;
+    public void scannerClose(int id) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Get a scanner on the current table starting and stopping at the
-     * specified rows.  ending at the last row in the table.  Return the
-     * specified columns.
-     *
-     * @return scanner id to be used with other scanner procedures
+     * Returns the scanner's current row value and advances to the next
+     * row in the table.  When there are no more rows in the table, or a key
+     * greater-than-or-equal-to the scanner's specified stopRow is reached,
+     * an empty list is returned.
      *
-     * @param tableName name of table
+     * @return a TRowResult containing the current row and
+     * a map of the columns to TCells.
      *
-     * @param startRow Starting row in table to scan.
-     * Send "" (empty string) to start at the first row.
+     * @throws IllegalArgument if ScannerID is invalid
      *
-     * @param stopRow row to stop scanning on. This row is *not* included in the
-     * scanner's results
+     * @throws NotFound when the scanner reaches the end
      *
-     * @param columns columns to scan. If column name is a column family, all
-     * columns of the specified column family are returned. It's also possible
-     * to pass a regex in the column qualifier.
+     * @param id id of a scanner returned by scannerOpen
      */
-    public int scannerOpenWithStop(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> scannerGet(int id) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
-     * Open a scanner for a given prefix.  That is all rows will have the specified
-     * prefix. No other rows will be returned.
+     * Returns, starting at the scanner's current row value nbRows worth of
+     * rows and advances to the next row in the table.  When there are no more
+     * rows in the table, or a key greater-than-or-equal-to the scanner's
+     * specified stopRow is reached,  an empty list is returned.
      *
-     * @return scanner id to use with other scanner calls
+     * @return a TRowResult containing the current row and
+     * a map of the columns to TCells.
      *
-     * @param tableName name of table
+     * @throws IllegalArgument if ScannerID is invalid
      *
-     * @param startAndPrefix the prefix (and thus start row) of the keys you want
+     * @throws NotFound when the scanner reaches the end
      *
-     * @param columns the columns you want returned
+     * @param id id of a scanner returned by scannerOpen
+     * 
+     * @param nbRows number of results to return
      */
-    public int scannerOpenWithPrefix(ByteBuffer tableName, ByteBuffer startAndPrefix, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
+    public List<TRowResult> scannerGetList(int id, int nbRows) throws IOError, IllegalArgument, org.apache.thrift.TException;
 
     /**
      * Get a scanner on the current table starting at the specified row and
      * ending at the last row in the table.  Return the specified columns.
-     * Only values with the specified timestamp are returned.
      *
      * @return scanner id to be used with other scanner procedures
      *
@@ -526,16 +557,13 @@ public class Hbase {
      * @param columns columns to scan. If column name is a column family, all
      * columns of the specified column family are returned. It's also possible
      * to pass a regex in the column qualifier.
-     *
-     * @param timestamp timestamp
      */
-    public int scannerOpenTs(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException;
+    public int scannerOpen(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Get a scanner on the current table starting and stopping at the
-     * specified rows.  ending at the last row in the table.  Return the
-     * specified columns.  Only values with the specified timestamp are
-     * returned.
+     * Get a scanner on the current table starting at the specified row and
+     * ending at the last row in the table.  Return the specified columns.
+     * Only values with the specified timestamp are returned.
      *
      * @return scanner id to be used with other scanner procedures
      *
@@ -544,16 +572,13 @@ public class Hbase {
      * @param startRow Starting row in table to scan.
      * Send "" (empty string) to start at the first row.
      *
-     * @param stopRow row to stop scanning on. This row is *not* included in the
-     * scanner's results
-     *
      * @param columns columns to scan. If column name is a column family, all
      * columns of the specified column family are returned. It's also possible
      * to pass a regex in the column qualifier.
      *
      * @param timestamp timestamp
      */
-    public int scannerOpenWithStopTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException;
+    public int scannerOpenTs(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
      * Get a scanner on the current table starting at the first row and
@@ -591,6 +616,55 @@ public class Hbase {
     public int scannerOpenWithFilterStringTs(ByteBuffer tableName, ByteBuffer filterString, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
+     * Open a scanner for a given prefix.  That is all rows will have the specified
+     * prefix. No other rows will be returned.
+     * 
+     * @return scanner id to use with other scanner calls
+     * 
+     * @param tableName name of table
+     * 
+     * @param startAndPrefix The prefix (and thus start row) of the keys you want
+     * Only those rows with the specified prefix will be returned
+     * 
+     * @param columns columns to scan. If column name is a column family, all
+     * columns of the specified column family are returned. It's also possible
+     * to pass a regex in the column qualifier.
+     */
+    public int scannerOpenWithPrefix(ByteBuffer tableName, ByteBuffer startAndPrefix, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
+
+    /**
+     * Get a scanner on the current table, using the Scan instance
+     * for the scan parameters.
+     * 
+     * @param tableName name of table
+     * 
+     * @param scan Scan instance
+     */
+    public int scannerOpenWithScan(ByteBuffer tableName, TScan scan) throws IOError, org.apache.thrift.TException;
+
+    /**
+     * Get a scanner on the current table starting and stopping at the
+     * specified rows.  ending at the last row in the table.  Return the
+     * specified columns.
+     * 
+     * @return scanner id to be used with other scanner procedures
+     * 
+     * @param tableName name of table
+     * 
+     * @param startRow Starting row in table to scan.
+     * Send "" (empty string) to start at the first row.
+     * 
+     * @param stopRow Row to stop scanning on. This row is *not* included in the
+     * scanner's results
+     * Send "" (empty string) to stop at the last row.
+     * 
+     * @param columns columns to scan. If column name is a column family, all
+     * columns of the specified column family are returned. It's also possible
+     * to pass a regex in the column qualifier.
+     */
+    public int scannerOpenWithStop(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException;
+
+    /**
      * Get a scanner on the current table starting and stopping at the
      * specified rows.
      *
@@ -640,100 +714,76 @@ public class Hbase {
     public int scannerOpenWithStopAndFilterStringTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, ByteBuffer filterString, long timestamp) throws IOError, org.apache.thrift.TException;
 
     /**
-     * Returns the scanner's current row value and advances to the next
-     * row in the table.  When there are no more rows in the table, or a key
-     * greater-than-or-equal-to the scanner's specified stopRow is reached,
-     * an empty list is returned.
-     *
-     * @return a TRowResult containing the current row and a map of the columns to TCells.
-     *
-     * @throws IllegalArgument if ScannerID is invalid
-     *
-     * @throws NotFound when the scanner reaches the end
-     *
-     * @param id id of a scanner returned by scannerOpen
-     */
-    public List<TRowResult> scannerGet(int id) throws IOError, IllegalArgument, org.apache.thrift.TException;
-
-    /**
-     * Returns, starting at the scanner's current row value nbRows worth of
-     * rows and advances to the next row in the table.  When there are no more
-     * rows in the table, or a key greater-than-or-equal-to the scanner's
-     * specified stopRow is reached,  an empty list is returned.
-     *
-     * @return a TRowResult containing the current row and a map of the columns to TCells.
-     *
-     * @throws IllegalArgument if ScannerID is invalid
-     *
-     * @throws NotFound when the scanner reaches the end
+     * Get a scanner on the current table starting and stopping at the
+     * specified rows.  ending at the last row in the table.  Return the
+     * specified columns.  Only values with the specified timestamp are
+     * returned.
      *
-     * @param id id of a scanner returned by scannerOpen
+     * @return scanner id to be used with other scanner procedures
      *
-     * @param nbRows number of results to return
-     */
-    public List<TRowResult> scannerGetList(int id, int nbRows) throws IOError, IllegalArgument, org.apache.thrift.TException;
-
-    /**
-     * Closes the server-state associated with an open scanner.
+     * @param tableName name of table
      *
-     * @throws IllegalArgument if ScannerID is invalid
+     * @param startRow Starting row in table to scan.
+     * Send "" (empty string) to start at the first row.
      *
-     * @param id id of a scanner returned by scannerOpen
-     */
-    public void scannerClose(int id) throws IOError, IllegalArgument, org.apache.thrift.TException;
-
-    /**
-     * Get the regininfo for the specified row. It scans
-     * the metatable to find region's start and end keys.
+     * @param stopRow Row to stop scanning on. This row is *not* included in the
+     * scanner's results
+     * Send "" (empty string) to stop at the last row.
      *
-     * @return value for specified row/column
+     * @param columns columns to scan. If column name is a column family, all
+     * columns of the specified column family are returned. It's also possible
+     * to pass a regex in the column qualifier.
      *
-     * @param row row key
+     * @param timestamp timestamp
      */
-    public TRegionInfo getRegionInfo(ByteBuffer row) throws IOError, org.apache.thrift.TException;
+    public int scannerOpenWithStopTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException;
 
   }
 
   public interface AsyncIface {
 
-    public void enableTable(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.enableTable_call> resultHandler) throws org.apache.thrift.TException;
+    public void atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.atomicIncrement_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void disableTable(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.disableTable_call> resultHandler) throws org.apache.thrift.TException;
+    public void checkAndMutateRow(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkAndMutateRow_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void isTableEnabled(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.isTableEnabled_call> resultHandler) throws org.apache.thrift.TException;
+    public void checkAndMutateRowTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkAndMutateRowTs_call> resultHandler) throws org.apache.thrift.TException;
 
     public void compact(ByteBuffer tableNameOrRegionName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.compact_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void majorCompact(ByteBuffer tableNameOrRegionName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.majorCompact_call> resultHandler) throws org.apache.thrift.TException;
+    public void createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createTable_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getTableNames(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableNames_call> resultHandler) throws org.apache.thrift.TException;
+    public void deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAll_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getColumnDescriptors(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getColumnDescriptors_call> resultHandler) throws org.apache.thrift.TException;
+    public void deleteAllRow(ByteBuffer tableName, ByteBuffer row, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAllRow_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getTableRegions(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableRegions_call> resultHandler) throws org.apache.thrift.TException;
+    public void deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAllRowTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createTable_call> resultHandler) throws org.apache.thrift.TException;
+    public void deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAllTs_call> resultHandler) throws org.apache.thrift.TException;
 
     public void deleteTable(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteTable_call> resultHandler) throws org.apache.thrift.TException;
 
+    public void disableTable(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.disableTable_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void enableTable(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.enableTable_call> resultHandler) throws org.apache.thrift.TException;
+
     public void get(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.get_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getVer_call> resultHandler) throws org.apache.thrift.TException;
+    public void getColumnDescriptors(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getColumnDescriptors_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getVerTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void getRegionInfo(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRegionInfo_call> resultHandler) throws org.apache.thrift.TException;
 
     public void getRow(ByteBuffer tableName, ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRow_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowWithColumns_call> resultHandler) throws org.apache.thrift.TException;
-
     public void getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowWithColumnsTs_call> resultHandler) throws org.apache.thrift.TException;
-
     public void getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowWithColumnPrefix_call> resultHandler) throws org.apache.thrift.TException;
 
     public void getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowWithColumnPrefixTs_call> resultHandler) throws org.apache.thrift.TException;
 
+    public void getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowWithColumns_call> resultHandler) throws org.apache.thrift.TException;
+
+    public void getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowWithColumnsTs_call> resultHandler) throws org.apache.thrift.TException;
+
     public void getRows(ByteBuffer tableName, List<ByteBuffer> rows, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRows_call> resultHandler) throws org.apache.thrift.TException;
 
     public void getRowsTs(ByteBuffer tableName, List<ByteBuffer> rows, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowsTs_call> resultHandler) throws org.apache.thrift.TException;
@@ -742,55 +792,55 @@ public class Hbase {
 
     public void getRowsWithColumnsTs(ByteBuffer tableName, List<ByteBuffer> rows, List<ByteBuffer> families, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowsWithColumnsTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void mutateRow(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRow_call> resultHandler) throws org.apache.thrift.TException;
+    public void getTableNames(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableNames_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void mutateRowTs(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRowTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void getTableRegions(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableRegions_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void mutateRows(ByteBuffer tableName, List<BatchMutation> rowBatches, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRows_call> resultHandler) throws org.apache.thrift.TException;
+    public void getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getVer_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void mutateRowsTs(ByteBuffer tableName, List<BatchMutation> rowBatches, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRowsTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getVerTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void checkAndMutateRow(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkAndMutateRow_call> resultHandler) throws org.apache.thrift.TException;
+    public void isTableEnabled(ByteBuffer tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.isTableEnabled_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void checkAndMutateRowTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkAndMutateRowTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void majorCompact(ByteBuffer tableNameOrRegionName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.majorCompact_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.atomicIncrement_call> resultHandler) throws org.apache.thrift.TException;
+    public void mutateRow(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRow_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAll_call> resultHandler) throws org.apache.thrift.TException;
+    public void mutateRowTs(ByteBuffer tableName, ByteBuffer row, List<Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRowTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAllTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void mutateRows(ByteBuffer tableName, List<BatchMutation> rowBatches, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRows_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void deleteAllRow(ByteBuffer tableName, ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAllRow_call> resultHandler) throws org.apache.thrift.TException;
+    public void mutateRowsAsync(ByteBuffer tableName, List<BatchMutation> rowBatches, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRowsAsync_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteAllRowTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void mutateRowsTs(ByteBuffer tableName, List<BatchMutation> rowBatches, long timestamp, Map<ByteBuffer,ByteBuffer> attributes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRowsTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpen(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpen_call> resultHandler) throws org.apache.thrift.TException;
+    public void mutateRowsTsAsync(ByteBuffer tableName, List<BatchMutation> rowBatches, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mutateRowsTsAsync_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenWithScan(ByteBuffer tableName, TScan scan, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithScan_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerClose(int id, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerClose_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenWithStop(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStop_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerGet(int id, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerGet_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenWithPrefix(ByteBuffer tableName, ByteBuffer startAndPrefix, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithPrefix_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerGetList(int id, int nbRows, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerGetList_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenTs(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpen(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpen_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenWithStopTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStopTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenTs(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenTs_call> resultHandler) throws org.apache.thrift.TException;
 
     public void scannerOpenWithFilterString(ByteBuffer tableName, ByteBuffer filterString, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithFilterString_call> resultHandler) throws org.apache.thrift.TException;
 
     public void scannerOpenWithFilterStringTs(ByteBuffer tableName, ByteBuffer filterString, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithFilterStringTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenWithStopAndFilterString(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, ByteBuffer filterString, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStopAndFilterString_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenWithPrefix(ByteBuffer tableName, ByteBuffer startAndPrefix, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithPrefix_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerOpenWithStopAndFilterStringTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, ByteBuffer filterString, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStopAndFilterStringTs_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenWithScan(ByteBuffer tableName, TScan scan, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithScan_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerGet(int id, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerGet_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenWithStop(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStop_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerGetList(int id, int nbRows, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerGetList_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenWithStopAndFilterString(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, ByteBuffer filterString, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStopAndFilterString_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void scannerClose(int id, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerClose_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenWithStopAndFilterStringTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, ByteBuffer filterString, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStopAndFilterStringTs_call> resultHandler) throws org.apache.thrift.TException;
 
-    public void getRegionInfo(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRegionInfo_call> resultHandler) throws org.apache.thrift.TException;
+    public void scannerOpenWithStopTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, long timestamp, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.scannerOpenWithStopTs_call> resultHandler) throws org.apache.thrift.TException;
 
   }
 
@@ -814,76 +864,105 @@ public class Hbase {
       super(iprot, oprot);
     }
 
-    public void enableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    public long atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long value) throws IOError, IllegalArgument, org.apache.thrift.TException
     {
-      send_enableTable(tableName);
-      recv_enableTable();
+      send_atomicIncrement(tableName, row, column, value);
+      return recv_atomicIncrement();
     }
 
-    public void send_enableTable(ByteBuffer tableName) throws org.apache.thrift.TException
+    public void send_atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long value) throws org.apache.thrift.TException
     {
-      enableTable_args args = new enableTable_args();
+      atomicIncrement_args args = new atomicIncrement_args();
       args.setTableName(tableName);
-      sendBase("enableTable", args);
+      args.setRow(row);
+      args.setColumn(column);
+      args.setValue(value);
+      sendBase("atomicIncrement", args);
     }
 
-    public void recv_enableTable() throws IOError, org.apache.thrift.TException
+    public long recv_atomicIncrement() throws IOError, IllegalArgument, org.apache.thrift.TException
     {
-      enableTable_result result = new enableTable_result();
-      receiveBase(result, "enableTable");
+      atomicIncrement_result result = new atomicIncrement_result();
+      receiveBase(result, "atomicIncrement");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
       if (result.io != null) {
         throw result.io;
       }
-      return;
+      if (result.ia != null) {
+        throw result.ia;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "atomicIncrement failed: unknown result");
     }
 
-    public void disableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    public boolean checkAndMutateRow(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException
     {
-      send_disableTable(tableName);
-      recv_disableTable();
+      send_checkAndMutateRow(tableName, row, columnCheck, valueCheck, mutations, attributes);
+      return recv_checkAndMutateRow();
     }
 
-    public void send_disableTable(ByteBuffer tableName) throws org.apache.thrift.TException
+    public void send_checkAndMutateRow(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.thrift.TException
     {
-      disableTable_args args = new disableTable_args();
+      checkAndMutateRow_args args = new checkAndMutateRow_args();
       args.setTableName(tableName);
-      sendBase("disableTable", args);
+      args.setRow(row);
+      args.setColumnCheck(columnCheck);
+      args.setValueCheck(valueCheck);
+      args.setMutations(mutations);
+      args.setAttributes(attributes);
+      sendBase("checkAndMutateRow", args);
     }
 
-    public void recv_disableTable() throws IOError, org.apache.thrift.TException
+    public boolean recv_checkAndMutateRow() throws IOError, IllegalArgument, org.apache.thrift.TException
     {
-      disableTable_result result = new disableTable_result();
-      receiveBase(result, "disableTable");
+      checkAndMutateRow_result result = new checkAndMutateRow_result();
+      receiveBase(result, "checkAndMutateRow");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
       if (result.io != null) {
         throw result.io;
       }
-      return;
+      if (result.ia != null) {
+        throw result.ia;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "checkAndMutateRow failed: unknown result");
     }
 
-    public boolean isTableEnabled(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    public boolean checkAndMutateRowTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, IllegalArgument, org.apache.thrift.TException
     {
-      send_isTableEnabled(tableName);
-      return recv_isTableEnabled();
+      send_checkAndMutateRowTs(tableName, row, columnCheck, valueCheck, mutations, timestamp, attributes);
+      return recv_checkAndMutateRowTs();
     }
 
-    public void send_isTableEnabled(ByteBuffer tableName) throws org.apache.thrift.TException
+    public void send_checkAndMutateRowTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer columnCheck, ByteBuffer valueCheck, List<Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.thrift.TException
     {
-      isTableEnabled_args args = new isTableEnabled_args();
+      checkAndMutateRowTs_args args = new checkAndMutateRowTs_args();
       args.setTableName(tableName);
-      sendBase("isTableEnabled", args);
+      args.setRow(row);
+      args.setColumnCheck(columnCheck);
+      args.setValueCheck(valueCheck);
+      args.setMutations(mutations);
+      args.setTimestamp(timestamp);
+      args.setAttributes(attributes);
+      sendBase("checkAndMutateRowTs", args);
     }
 
-    public boolean recv_isTableEnabled() throws IOError, org.apache.thrift.TException
+    public boolean recv_checkAndMutateRowTs() throws IOError, IllegalArgument, org.apache.thrift.TException
     {
-      isTableEnabled_result result = new isTableEnabled_result();
-      receiveBase(result, "isTableEnabled");
+      checkAndMutateRowTs_result result = new checkAndMutateRowTs_result();
+      receiveBase(result, "checkAndMutateRowTs");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "isTableEnabled failed: unknown result");
+      if (result.ia != null) {
+        throw result.ia;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "checkAndMutateRowTs failed: unknown result");
     }
 
     public void compact(ByteBuffer tableNameOrRegionName) throws IOError, org.apache.thrift.TException
@@ -909,133 +988,134 @@ public class Hbase {
       return;
     }
 
-    public void majorCompact(ByteBuffer tableNameOrRegionName) throws IOError, org.apache.thrift.TException
+    public void createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies) throws IOError, IllegalArgument, AlreadyExists, org.apache.thrift.TException
     {
-      send_majorCompact(tableNameOrRegionName);
-      recv_majorCompact();
+      send_createTable(tableName, columnFamilies);
+      recv_createTable();
     }
 
-    public void send_majorCompact(ByteBuffer tableNameOrRegionName) throws org.apache.thrift.TException
+    public void send_createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies) throws org.apache.thrift.TException
     {
-      majorCompact_args args = new majorCompact_args();
-      args.setTableNameOrRegionName(tableNameOrRegionName);
-      sendBase("majorCompact", args);
+      createTable_args args = new createTable_args();
+      args.setTableName(tableName);
+      args.setColumnFamilies(columnFamilies);
+      sendBase("createTable", args);
     }
 
-    public void recv_majorCompact() throws IOError, org.apache.thrift.TException
+    public void recv_createTable() throws IOError, IllegalArgument, AlreadyExists, org.apache.thrift.TException
     {
-      majorCompact_result result = new majorCompact_result();
-      receiveBase(result, "majorCompact");
+      createTable_result result = new createTable_result();
+      receiveBase(result, "createTable");
       if (result.io != null) {
         throw result.io;
       }
+      if (result.ia != null) {
+        throw result.ia;
+      }
+      if (result.exist != null) {
+        throw result.exist;
+      }
       return;
     }
 
-    public List<ByteBuffer> getTableNames() throws IOError, org.apache.thrift.TException
+    public void deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column) throws IOError, org.apache.thrift.TException
     {
-      send_getTableNames();
-      return recv_getTableNames();
+      send_deleteAll(tableName, row, column);
+      recv_deleteAll();
     }
 
-    public void send_getTableNames() throws org.apache.thrift.TException
+    public void send_deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column) throws org.apache.thrift.TException
     {
-      getTableNames_args args = new getTableNames_args();
-      sendBase("getTableNames", args);
+      deleteAll_args args = new deleteAll_args();
+      args.setTableName(tableName);
+      args.setRow(row);
+      args.setColumn(column);
+      sendBase("deleteAll", args);
     }
 
-    public List<ByteBuffer> recv_getTableNames() throws IOError, org.apache.thrift.TException
+    public void recv_deleteAll() throws IOError, org.apache.thrift.TException
     {
-      getTableNames_result result = new getTableNames_result();
-      receiveBase(result, "getTableNames");
-      if (result.isSetSuccess()) {
-        return result.success;
-      }
+      deleteAll_result result = new deleteAll_result();
+      receiveBase(result, "deleteAll");
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getTableNames failed: unknown result");
+      return;
     }
 
-    public Map<ByteBuffer,ColumnDescriptor> getColumnDescriptors(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    public void deleteAllRow(ByteBuffer tableName, ByteBuffer row, Map<ByteBuffer,ByteBuffer> attributes) throws IOError, org.apache.thrift.TException
     {
-      send_getColumnDescriptors(tableName);
-      return recv_getColumnDescriptors();
+      send_deleteAllRow(tableName, row, attributes);
+      recv_deleteAllRow();
     }
 
-    public void send_getColumnDescriptors(ByteBuffer tableName) throws org.apache.thrift.TException
+    public void send_deleteAllRow(ByteBuffer tableName, ByteBuffer row, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.thrift.TException
     {
-      getColumnDescriptors_args args = new getColumnDescriptors_args();
+      deleteAllRow_args args = new deleteAllRow_args();
       args.setTableName(tableName);
-      sendBase("getColumnDescriptors", args);
+      args.setRow(row);
+      args.setAttributes(attributes);
+      sendBase("deleteAllRow", args);
     }
 
-    public Map<ByteBuffer,ColumnDescriptor> recv_getColumnDescriptors() throws IOError, org.apache.thrift.TException
+    public void recv_deleteAllRow() throws IOError, org.apache.thrift.TException
     {
-      getColumnDescriptors_result result = new getColumnDescriptors_result();
-      receiveBase(result, "getColumnDescriptors");
-      if (result.isSetSuccess()) {
-        return result.success;
-      }
+      deleteAllRow_result result = new deleteAllRow_result();
+      receiveBase(result, "deleteAllRow");
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getColumnDescriptors failed: unknown result");
+      return;
     }
 
-    public List<TRegionInfo> getTableRegions(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    public void deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException
     {
-      send_getTableRegions(tableName);
-      return recv_getTableRegions();
+      send_deleteAllRowTs(tableName, row, timestamp);
+      recv_deleteAllRowTs();
     }
 
-    public void send_getTableRegions(ByteBuffer tableName) throws org.apache.thrift.TException
+    public void send_deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws org.apache.thrift.TException
     {
-      getTableRegions_args args = new getTableRegions_args();
+      deleteAllRowTs_args args = new deleteAllRowTs_args();
       args.setTableName(tableName);
-      sendBase("getTableRegions", args);
+      args.setRow(row);
+      args.setTimestamp(timestamp);
+      sendBase("deleteAllRowTs", args);
     }
 
-    public List<TRegionInfo> recv_getTableRegions() throws IOError, org.apache.thrift.TException
+    public void recv_deleteAllRowTs() throws IOError, org.apache.thrift.TException
     {
-      getTableRegions_result result = new getTableRegions_result();
-      receiveBase(result, "getTableRegions");
-      if (result.isSetSuccess()) {
-        return result.success;
-      }
+      deleteAllRowTs_result result = new deleteAllRowTs_result();
+      receiveBase(result, "deleteAllRowTs");
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getTableRegions failed: unknown result");
+      return;
     }
 
-    public void createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies) throws IOError, IllegalArgument, AlreadyExists, org.apache.thrift.TException
+    public void deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp) throws IOError, org.apache.thrift.TException
     {
-      send_createTable(tableName, columnFamilies);
-      recv_createTable();
+      send_deleteAllTs(tableName, row, column, timestamp);
+      recv_deleteAllTs();
     }
 
-    public void send_createTable(ByteBuffer tableName, List<ColumnDescriptor> columnFamilies) throws org.apache.thrift.TException
+    public void send_deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp) throws org.apache.thrift.TException
     {
-      createTable_args args = new createTable_args();
+      deleteAllTs_args args = new deleteAllTs_args();
       args.setTableName(tableName);
-      args.setColumnFamilies(columnFamilies);
-      sendBase("createTable", args);
+      args.setRow(row);
+      args.setColumn(column);
+      args.setTimestamp(timestamp);
+      sendBase("deleteAllTs", args);
     }
 
-    public void recv_createTable() throws IOError, IllegalArgument, AlreadyExists, org.apache.thrift.TException
+    public void recv_deleteAllTs() throws IOError, org.apache.thrift.TException
     {
-      createTable_result result = new createTable_result();
-      receiveBase(result, "createTable");
+      deleteAllTs_result result = new deleteAllTs_result();
+      receiveBase(result, "deleteAllTs");
       if (result.io != null) {
         throw result.io;
       }
-      if (result.ia != null) {
-        throw result.ia;
-      }
-      if (result.exist != null) {
-        throw result.exist;
-      }
       return;
     }
 
@@ -1062,6 +1142,52 @@ public class Hbase {
       return;
     }
 
+    public void disableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    {
+      send_disableTable(tableName);
+      recv_disableTable();
+    }
+
+    public void send_disableTable(ByteBuffer tableName) throws org.apache.thrift.TException
+    {
+      disableTable_args args = new disableTable_args();
+      args.setTableName(tableName);
+      sendBase("disableTable", args);
+    }
+
+    public void recv_disableTable() throws IOError, org.apache.thrift.TException
+    {
+      disableTable_result result = new disableTable_result();
+      receiveBase(result, "disableTable");
+      if (result.io != null) {
+        throw result.io;
+      }
+      return;
+    }
+
+    public void enableTable(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
+    {
+      send_enableTable(tableName);
+      recv_enableTable();
+    }
+
+    public void send_enableTable(ByteBuffer tableName) throws org.apache.thrift.TException
+    {
+      enableTable_args args = new enableTable_args();
+      args.setTableName(tableName);
+      sendBase("enableTable", args);
+    }
+
+    public void recv_enableTable() throws IOError, org.apache.thrift.TException
+    {
+      enableTable_result result = new enableTable_result();
+      receiveBase(result, "enableTable");
+      if (result.io != null) {
+        throw result.io;
+      }
+      return;
+    }
+
     public List<TCell> get(ByteBuffer tableName, ByteBuffer row, ByteBuffer column) throws IOError, org.apache.thrift.TException
     {
       send_get(tableName, row, column);
@@ -1090,63 +1216,56 @@ public class Hbase {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "get failed: unknown result");
     }
 
-    public List<TCell> getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions) throws IOError, org.apache.thrift.TException
+    public Map<ByteBuffer,ColumnDescriptor> getColumnDescriptors(ByteBuffer tableName) throws IOError, org.apache.thrift.TException
     {
-      send_getVer(tableName, row, column, numVersions);
-      return recv_getVer();
+      send_getColumnDescriptors(tableName);
+      return recv_getColumnDescriptors();
     }
 
-    public void send_getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions) throws org.apache.thrift.TException
+    public void send_getColumnDescriptors(ByteBuffer tableName) throws org.apache.thrift.TException
     {
-      getVer_args args = new getVer_args();
+      getColumnDescriptors_args args = new getColumnDescriptors_args();
       args.setTableName(tableName);
-      args.setRow(row);
-      args.setColumn(column);
-      args.setNumVersions(numVersions);
-      sendBase("getVer", args);
+      sendBase("getColumnDescriptors", args);
     }
 
-    public List<TCell> recv_getVer() throws IOError, org.apache.thrift.TException
+    public Map<ByteBuffer,ColumnDescriptor> recv_getColumnDescriptors() throws IOError, org.apache.thrift.TException
     {
-      getVer_result result = new getVer_result();
-      receiveBase(result, "getVer");
+      getColumnDescriptors_result result = new getColumnDescriptors_result();
+      receiveBase(result, "getColumnDescriptors");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getVer failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getColumnDescriptors failed: unknown result");
     }
 
-    public List<TCell> getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions) throws IOError, org.apache.thrift.TException
+    public TRegionInfo getRegionInfo(ByteBuffer row) throws IOError, org.apache.thrift.TException
     {
-      send_getVerTs(tableName, row, column, timestamp, numVersions);
-      return recv_getVerTs();
+      send_getRegionInfo(row);
+      return recv_getRegionInfo();
     }
 
-    public void send_getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions) throws org.apache.thrift.TException
+    public void send_getRegionInfo(ByteBuffer row) throws org.apache.thrift.TException
     {
-      getVerTs_args args = new getVerTs_args();
-      args.setTableName(tableName);
+      getRegionInfo_args args = new getRegionInfo_args();
       args.setRow(row);
-      args.setColumn(column);
-      args.setTimestamp(timestamp);
-      args.setNumVersions(numVersions);
-      sendBase("getVerTs", args);
+      sendBase("getRegionInfo", args);
     }
 
-    public List<TCell> recv_getVerTs() throws IOError, org.apache.thrift.TException
+    public TRegionInfo recv_getRegionInfo() throws IOError, org.apache.thrift.TException
     {
-      getVerTs_result result = new getVerTs_result();
-      receiveBase(result, "getVerTs");
+      getRegionInfo_result result = new getRegionInfo_result();
+      receiveBase(result, "getRegionInfo");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getVerTs failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRegionInfo failed: unknown result");
     }
 
     public List<TRowResult> getRow(ByteBuffer tableName, ByteBuffer row) throws IOError, org.apache.thrift.TException
@@ -1176,146 +1295,146 @@ public class Hbase {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRow failed: unknown result");
     }
 
-    public List<TRowResult> getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException
+    public List<TRowResult> getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException
     {
-      send_getRowWithColumns(tableName, row, columns);
-      return recv_getRowWithColumns();
+      send_getRowTs(tableName, row, timestamp);
+      return recv_getRowTs();
     }
 
-    public void send_getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns) throws org.apache.thrift.TException
+    public void send_getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws org.apache.thrift.TException
     {
-      getRowWithColumns_args args = new getRowWithColumns_args();
+      getRowTs_args args = new getRowTs_args();
       args.setTableName(tableName);
       args.setRow(row);
-      args.setColumns(columns);
-      sendBase("getRowWithColumns", args);
+      args.setTimestamp(timestamp);
+      sendBase("getRowTs", args);
     }
 
-    public List<TRowResult> recv_getRowWithColumns() throws IOError, org.apache.thrift.TException
+    public List<TRowResult> recv_getRowTs() throws IOError, org.apache.thrift.TException
     {
-      getRowWithColumns_result result = new getRowWithColumns_result();
-      receiveBase(result, "getRowWithColumns");
+      getRowTs_result result = new getRowTs_result();
+      receiveBase(result, "getRowTs");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumns failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowTs failed: unknown result");
     }
 
-    public List<TRowResult> getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws IOError, org.apache.thrift.TException
+    public List<TRowResult> getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix) throws IOError, org.apache.thrift.TException
     {
-      send_getRowTs(tableName, row, timestamp);
-      return recv_getRowTs();
+      send_getRowWithColumnPrefix(tableName, row, prefix);
+      return recv_getRowWithColumnPrefix();
     }
 
-    public void send_getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp) throws org.apache.thrift.TException
+    public void send_getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix) throws org.apache.thrift.TException
     {
-      getRowTs_args args = new getRowTs_args();
+      getRowWithColumnPrefix_args args = new getRowWithColumnPrefix_args();
       args.setTableName(tableName);
       args.setRow(row);
-      args.setTimestamp(timestamp);
-      sendBase("getRowTs", args);
+      args.setPrefix(prefix);
+      sendBase("getRowWithColumnPrefix", args);
     }
 
-    public List<TRowResult> recv_getRowTs() throws IOError, org.apache.thrift.TException
+    public List<TRowResult> recv_getRowWithColumnPrefix() throws IOError, org.apache.thrift.TException
     {
-      getRowTs_result result = new getRowTs_result();
-      receiveBase(result, "getRowTs");
+      getRowWithColumnPrefix_result result = new getRowWithColumnPrefix_result();
+      receiveBase(result, "getRowWithColumnPrefix");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowTs failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumnPrefix failed: unknown result");
     }
 
-    public List<TRowResult> getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException
+    public List<TRowResult> getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp) throws IOError, org.apache.thrift.TException
     {
-      send_getRowWithColumnsTs(tableName, row, columns, timestamp);
-      return recv_getRowWithColumnsTs();
+      send_getRowWithColumnPrefixTs(tableName, row, prefix, timestamp);
+      return recv_getRowWithColumnPrefixTs();
     }
 
-    public void send_getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp) throws org.apache.thrift.TException
+    public void send_getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp) throws org.apache.thrift.TException
     {
-      getRowWithColumnsTs_args args = new getRowWithColumnsTs_args();
+      getRowWithColumnPrefixTs_args args = new getRowWithColumnPrefixTs_args();
       args.setTableName(tableName);
       args.setRow(row);
-      args.setColumns(columns);
+      args.setPrefix(prefix);
       args.setTimestamp(timestamp);
-      sendBase("getRowWithColumnsTs", args);
+      sendBase("getRowWithColumnPrefixTs", args);
     }
 
-    public List<TRowResult> recv_getRowWithColumnsTs() throws IOError, org.apache.thrift.TException
+    public List<TRowResult> recv_getRowWithColumnPrefixTs() throws IOError, org.apache.thrift.TException
     {
-      getRowWithColumnsTs_result result = new getRowWithColumnsTs_result();
-      receiveBase(result, "getRowWithColumnsTs");
+      getRowWithColumnPrefixTs_result result = new getRowWithColumnPrefixTs_result();
+      receiveBase(result, "getRowWithColumnPrefixTs");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumnsTs failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumnPrefixTs failed: unknown result");
     }
 
-    public List<TRowResult> getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix) throws IOError, org.apache.thrift.TException
+    public List<TRowResult> getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns) throws IOError, org.apache.thrift.TException
     {
-      send_getRowWithColumnPrefix(tableName, row, prefix);
-      return recv_getRowWithColumnPrefix();
+      send_getRowWithColumns(tableName, row, columns);
+      return recv_getRowWithColumns();
     }
 
-    public void send_getRowWithColumnPrefix(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix) throws org.apache.thrift.TException
+    public void send_getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns) throws org.apache.thrift.TException
     {
-      getRowWithColumnPrefix_args args = new getRowWithColumnPrefix_args();
+      getRowWithColumns_args args = new getRowWithColumns_args();
       args.setTableName(tableName);
       args.setRow(row);
-      args.setPrefix(prefix);
-      sendBase("getRowWithColumnPrefix", args);
+      args.setColumns(columns);
+      sendBase("getRowWithColumns", args);
     }
 
-    public List<TRowResult> recv_getRowWithColumnPrefix() throws IOError, org.apache.thrift.TException
+    public List<TRowResult> recv_getRowWithColumns() throws IOError, org.apache.thrift.TException
     {
-      getRowWithColumnPrefix_result result = new getRowWithColumnPrefix_result();
-      receiveBase(result, "getRowWithColumnPrefix");
+      getRowWithColumns_result result = new getRowWithColumns_result();
+      receiveBase(result, "getRowWithColumns");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumnPrefix failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumns failed: unknown result");
     }
 
-    public List<TRowResult> getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp) throws IOError, org.apache.thrift.TException
+    public List<TRowResult> getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp) throws IOError, org.apache.thrift.TException
     {
-      send_getRowWithColumnPrefixTs(tableName, row, prefix, timestamp);
-      return recv_getRowWithColumnPrefixTs();
+      send_getRowWithColumnsTs(tableName, row, columns, timestamp);
+      return recv_getRowWithColumnsTs();
     }
 
-    public void send_getRowWithColumnPrefixTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer prefix, long timestamp) throws org.apache.thrift.TException
+    public void send_getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp) throws org.apache.thrift.TException
     {
-      getRowWithColumnPrefixTs_args args = new getRowWithColumnPrefixTs_args();
+      getRowWithColumnsTs_args args = new getRowWithColumnsTs_args();
       args.setTableName(tableName);
       args.setRow(row);
-      args.setPrefix(prefix);
+      args.setColumns(columns);
       args.setTimestamp(timestamp);
-      sendBase("getRowWithColumnPrefixTs", args);
+      sendBase("getRowWithColumnsTs", args);
     }
 
-    public List<TRowResult> recv_getRowWithColumnPrefixTs() throws IOError, org.apache.thrift.TException
+    public List<TRowResult> recv_getRowWithColumnsTs() throws IOError, org.apache.thrift.TException
     {
-      getRowWithColumnPrefixTs_result result = new getRowWithColumnPrefixTs_result();
-      receiveBase(result, "getRowWithColumnPrefixTs");
+      getRowWithColumnsTs_result result = new getRowWithColumnsTs_result();
+      receiveBase(result, "getRowWithColumnsTs");
       if (result.isSetSuccess()) {
         return result.success;
       }
       if (result.io != null) {
         throw result.io;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getRowWithColumnPrefixTs failed: unknown result");

[... 52958 lines stripped ...]