Class ThriftHBaseServiceHandler

java.lang.Object
org.apache.hadoop.hbase.thrift.HBaseServiceHandler
org.apache.hadoop.hbase.thrift.ThriftHBaseServiceHandler
All Implemented Interfaces:
org.apache.hadoop.hbase.thrift.generated.Hbase.Iface

@Private public class ThriftHBaseServiceHandler extends HBaseServiceHandler implements org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
The HBaseServiceHandler is a glue object that connects Thrift RPC calls to the HBase client API primarily defined in the Admin and Table objects.
  • Field Details

  • Constructor Details

  • Method Details

    • getAllColumns

      byte[][] getAllColumns(Table table) throws IOException
      Returns a list of all the column families for a given Table.
      Throws:
      IOException
    • addScanner

      protected int addScanner(ResultScanner scanner, boolean sortColumns)
      Assigns a unique ID to the scanner and adds the mapping to an internal hash-map.
      Parameters:
      scanner - the ResultScanner to add
      Returns:
      integer scanner id
    • getScanner

      Returns the scanner associated with the specified ID.
      Parameters:
      id - the ID of the scanner to get
      Returns:
      a Scanner, or null if ID was invalid.
    • removeScanner

      private void removeScanner(int id)
      Removes the scanner associated with the specified ID from the internal id->scanner hash-map.
      Parameters:
      id - the ID of the scanner to remove
    • enableTable

      public void enableTable(ByteBuffer tableName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Brings a table on-line (enables it)
      Specified by:
      enableTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of the table
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • disableTable

      public void disableTable(ByteBuffer tableName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Disables a table (takes it off-line) If it is being served, the master will tell the servers to stop serving it.
      Specified by:
      disableTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of the table
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • isTableEnabled

      public boolean isTableEnabled(ByteBuffer tableName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Specified by:
      isTableEnabled in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of the table to check
      Returns:
      true if table is on-line
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getTableNamesWithIsTableEnabled

      public Map<ByteBuffer,Boolean> getTableNamesWithIsTableEnabled() throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      List all the userspace tables and their enabled or disabled flags.
      Specified by:
      getTableNamesWithIsTableEnabled in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Returns:
      list of tables with is enabled flags
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • compact

      public void compact(ByteBuffer tableNameOrRegionName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Specified by:
      compact in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • majorCompact

      public void majorCompact(ByteBuffer tableNameOrRegionName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Specified by:
      majorCompact in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getTableNames

      public List<ByteBuffer> getTableNames() throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      List all the userspace tables.
      Specified by:
      getTableNames in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Returns:
      returns a list of names
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getTableRegions

      public List<org.apache.hadoop.hbase.thrift.generated.TRegionInfo> getTableRegions(ByteBuffer tableName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Returns the list of regions in the given table, or an empty list if the table does not exist
      Specified by:
      getTableRegions in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - table name
      Returns:
      list of region descriptors
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • get

      public List<org.apache.hadoop.hbase.thrift.generated.TCell> get(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get a single TCell for the specified table, row, and column at the latest timestamp. Returns an empty list if no such value exists.
      Specified by:
      get in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      column - column name
      attributes - Get attributes
      Returns:
      value for specified row/column
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • get

      protected List<org.apache.hadoop.hbase.thrift.generated.TCell> get(ByteBuffer tableName, ByteBuffer row, byte[] family, byte[] qualifier, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Note: this internal interface is slightly different from public APIs in regard to handling of the qualifier. Here we differ from the public Java API in that null != byte[0]. Rather, we respect qual == null as a request for the entire column family. The caller ( get(ByteBuffer, ByteBuffer, ByteBuffer, Map)) interface IS consistent in that the column is parse like normal.
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getVer

      public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVer(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, int numVersions, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the specified number of versions for the specified table, row, and column.
      Specified by:
      getVer in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      column - column name
      numVersions - number of versions to retrieve
      attributes - Get attributes
      Returns:
      list of cells for specified row/column
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getVer

      public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVer(ByteBuffer tableName, ByteBuffer row, byte[] family, byte[] qualifier, int numVersions, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Note: this public interface is slightly different from public Java APIs in regard to handling of the qualifier. Here we differ from the public Java API in that null != byte[0]. Rather, we respect qual == null as a request for the entire column family. If you want to access the entire column family, use getVer(ByteBuffer, ByteBuffer, ByteBuffer, int, Map) with a column value that lacks a ':'.
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getVerTs

      public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVerTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, int numVersions, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      getVerTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      column - column name
      timestamp - timestamp
      numVersions - number of versions to retrieve
      attributes - Get attributes
      Returns:
      list of cells for specified row/column
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getVerTs

      protected List<org.apache.hadoop.hbase.thrift.generated.TCell> getVerTs(ByteBuffer tableName, ByteBuffer row, byte[] family, byte[] qualifier, long timestamp, int numVersions, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Note: this internal interface is slightly different from public APIs in regard to handling of the qualifier. Here we differ from the public Java API in that null != byte[0]. Rather, we respect qual == null as a request for the entire column family. The caller ( getVerTs(ByteBuffer, ByteBuffer, ByteBuffer, long, int, Map)) interface IS consistent in that the column is parse like normal.
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRow

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRow(ByteBuffer tableName, ByteBuffer row, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get all the data for the specified table and row at the latest timestamp. Returns an empty list if the row does not exist.
      Specified by:
      getRow in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      attributes - Get attributes
      Returns:
      TRowResult containing the row and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRowWithColumns

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowWithColumns(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the specified columns for the specified table and row at the latest timestamp. Returns an empty list if the row does not exist.
      Specified by:
      getRowWithColumns in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      columns - List of columns to return, null for all columns
      attributes - Get attributes
      Returns:
      TRowResult containing the row and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRowTs

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get all the data for the specified table and row at the specified timestamp. Returns an empty list if the row does not exist.
      Specified by:
      getRowTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of the table
      row - row key
      timestamp - timestamp
      attributes - Get attributes
      Returns:
      TRowResult containing the row and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRowWithColumnsTs

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowWithColumnsTs(ByteBuffer tableName, ByteBuffer row, List<ByteBuffer> columns, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the specified columns for the specified table and row at the specified timestamp. Returns an empty list if the row does not exist.
      Specified by:
      getRowWithColumnsTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      columns - List of columns to return, null for all columns
      attributes - Get attributes
      Returns:
      TRowResult containing the row and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRows

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRows(ByteBuffer tableName, List<ByteBuffer> rows, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get all the data for the specified table and rows at the latest timestamp. Returns an empty list if no rows exist.
      Specified by:
      getRows in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      rows - row keys
      attributes - Get attributes
      Returns:
      TRowResult containing the rows and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRowsWithColumns

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowsWithColumns(ByteBuffer tableName, List<ByteBuffer> rows, List<ByteBuffer> columns, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the specified columns for the specified table and rows at the latest timestamp. Returns an empty list if no rows exist.
      Specified by:
      getRowsWithColumns in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      rows - row keys
      columns - List of columns to return, null for all columns
      attributes - Get attributes
      Returns:
      TRowResult containing the rows and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRowsTs

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowsTs(ByteBuffer tableName, List<ByteBuffer> rows, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get all the data for the specified table and rows at the specified timestamp. Returns an empty list if no rows exist.
      Specified by:
      getRowsTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of the table
      rows - row keys
      timestamp - timestamp
      attributes - Get attributes
      Returns:
      TRowResult containing the rows and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRowsWithColumnsTs

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowsWithColumnsTs(ByteBuffer tableName, List<ByteBuffer> rows, List<ByteBuffer> columns, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the specified columns for the specified table and rows at the specified timestamp. Returns an empty list if no rows exist.
      Specified by:
      getRowsWithColumnsTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      rows - row keys
      columns - List of columns to return, null for all columns
      attributes - Get attributes
      Returns:
      TRowResult containing the rows and map of columns to TCells
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • deleteAll

      public void deleteAll(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Delete all cells that match the passed row and column.
      Specified by:
      deleteAll in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - Row to update
      column - name of column whose value is to be deleted
      attributes - Delete attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • deleteAllTs

      public void deleteAllTs(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Delete all cells that match the passed row and column and whose timestamp is equal-to or older than the passed timestamp.
      Specified by:
      deleteAllTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - Row to update
      column - name of column whose value is to be deleted
      timestamp - timestamp
      attributes - Delete attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • deleteAllRow

      public void deleteAllRow(ByteBuffer tableName, ByteBuffer row, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Completely delete the row's cells.
      Specified by:
      deleteAllRow in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - key of the row to be completely deleted.
      attributes - Delete attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • deleteAllRowTs

      public void deleteAllRowTs(ByteBuffer tableName, ByteBuffer row, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Completely delete the row's cells marked with a timestamp equal-to or older than the passed timestamp.
      Specified by:
      deleteAllRowTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - key of the row to be completely deleted.
      timestamp - timestamp
      attributes - Delete attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • createTable

      public void createTable(ByteBuffer in_tableName, List<org.apache.hadoop.hbase.thrift.generated.ColumnDescriptor> columnFamilies) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.hadoop.hbase.thrift.generated.AlreadyExists
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      createTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      in_tableName - name of table to create
      columnFamilies - list of column family descriptors
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument - if an input parameter is invalid
      org.apache.hadoop.hbase.thrift.generated.AlreadyExists - if the table name already exists
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getTableName

      private static TableName getTableName(ByteBuffer buffer)
    • deleteTable

      public void deleteTable(ByteBuffer in_tableName) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Deletes a table
      Specified by:
      deleteTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      in_tableName - name of table to delete
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError - if table doesn't exist on server or there was some other problem
    • mutateRow

      public void mutateRow(ByteBuffer tableName, ByteBuffer row, List<org.apache.hadoop.hbase.thrift.generated.Mutation> mutations, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      mutateRow in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      mutations - list of mutation commands
      attributes - Mutation attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
    • mutateRowTs

      public void mutateRowTs(ByteBuffer tableName, ByteBuffer row, List<org.apache.hadoop.hbase.thrift.generated.Mutation> mutations, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      mutateRowTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      mutations - list of mutation commands
      timestamp - timestamp
      attributes - Mutation attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
    • mutateRows

      public void mutateRows(ByteBuffer tableName, List<org.apache.hadoop.hbase.thrift.generated.BatchMutation> rowBatches, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      mutateRows in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      rowBatches - list of row batches
      attributes - Mutation attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      org.apache.thrift.TException
    • mutateRowsTs

      public void mutateRowsTs(ByteBuffer tableName, List<org.apache.hadoop.hbase.thrift.generated.BatchMutation> rowBatches, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      mutateRowsTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      rowBatches - list of row batches
      timestamp - timestamp
      attributes - Mutation attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      org.apache.thrift.TException
    • atomicIncrement

      public long atomicIncrement(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, long amount) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Atomically increment the column value specified. Returns the next value post increment.
      Specified by:
      atomicIncrement in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row to increment
      column - name of column
      amount - amount to increment by
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      org.apache.thrift.TException
    • atomicIncrement

      protected long atomicIncrement(ByteBuffer tableName, ByteBuffer row, byte[] family, byte[] qualifier, long amount) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.thrift.TException
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      org.apache.thrift.TException
    • scannerClose

      public void scannerClose(int id) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Closes the server-state associated with an open scanner.
      Specified by:
      scannerClose in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      id - id of a scanner returned by scannerOpen
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument - if ScannerID is invalid
      org.apache.hadoop.hbase.thrift.generated.IOError
    • scannerGetList

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> scannerGetList(int id, int nbRows) throws org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      scannerGetList in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      id - id of a scanner returned by scannerOpen
      nbRows - number of results to return
      Returns:
      a TRowResult containing the current row and a map of the columns to TCells.
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument - if ScannerID is invalid
      org.apache.hadoop.hbase.thrift.generated.IOError
    • scannerGet

      public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> scannerGet(int id) throws org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      scannerGet in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      id - id of a scanner returned by scannerOpen
      Returns:
      a TRowResult containing the current row and a map of the columns to TCells.
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument - if ScannerID is invalid
      org.apache.hadoop.hbase.thrift.generated.IOError
    • scannerOpenWithScan

      public int scannerOpenWithScan(ByteBuffer tableName, org.apache.hadoop.hbase.thrift.generated.TScan tScan, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get a scanner on the current table, using the Scan instance for the scan parameters.
      Specified by:
      scannerOpenWithScan in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      tScan - Scan instance
      attributes - Scan attributes
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • scannerOpen

      public int scannerOpen(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      scannerOpen in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      startRow - Starting row in table to scan. Send "" (empty string) to start at the first row.
      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.
      attributes - Scan attributes
      Returns:
      scanner id to be used with other scanner procedures
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • scannerOpenWithStop

      public int scannerOpenWithStop(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      scannerOpenWithStop in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      startRow - Starting row in table to scan. Send "" (empty string) to start at the first row.
      stopRow - row to stop scanning on. This row is *not* included in the scanner's results
      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.
      attributes - Scan attributes
      Returns:
      scanner id to be used with other scanner procedures
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • scannerOpenWithPrefix

      public int scannerOpenWithPrefix(ByteBuffer tableName, ByteBuffer startAndPrefix, List<ByteBuffer> columns, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Open a scanner for a given prefix. That is all rows will have the specified prefix. No other rows will be returned.
      Specified by:
      scannerOpenWithPrefix in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      startAndPrefix - the prefix (and thus start row) of the keys you want
      columns - the columns you want returned
      attributes - Scan attributes
      Returns:
      scanner id to use with other scanner calls
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • scannerOpenTs

      public int scannerOpenTs(ByteBuffer tableName, ByteBuffer startRow, List<ByteBuffer> columns, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      scannerOpenTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      startRow - Starting row in table to scan. Send "" (empty string) to start at the first row.
      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.
      timestamp - timestamp
      attributes - Scan attributes
      Returns:
      scanner id to be used with other scanner procedures
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • scannerOpenWithStopTs

      public int scannerOpenWithStopTs(ByteBuffer tableName, ByteBuffer startRow, ByteBuffer stopRow, List<ByteBuffer> columns, long timestamp, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      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.
      Specified by:
      scannerOpenWithStopTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      startRow - Starting row in table to scan. Send "" (empty string) to start at the first row.
      stopRow - row to stop scanning on. This row is *not* included in the scanner's results
      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.
      timestamp - timestamp
      attributes - Scan attributes
      Returns:
      scanner id to be used with other scanner procedures
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • getColumnDescriptors

      public Map<ByteBuffer,org.apache.hadoop.hbase.thrift.generated.ColumnDescriptor> getColumnDescriptors(ByteBuffer tableName) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      List all the column families assoicated with a table.
      Specified by:
      getColumnDescriptors in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - table name
      Returns:
      list of column family descriptors
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • closeTable

      private void closeTable(Table table) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getRegionInfo

      public org.apache.hadoop.hbase.thrift.generated.TRegionInfo getRegionInfo(ByteBuffer searchRow) throws org.apache.hadoop.hbase.thrift.generated.IOError
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the regininfo for the specified row. It scans the metatable to find region's start and end keys.
      Specified by:
      getRegionInfo in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      searchRow - row key
      Returns:
      value for specified row/column
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
    • getReverseScanResult

      private Result getReverseScanResult(byte[] tableName, byte[] row, byte[] family) throws IOException
      Throws:
      IOException
    • increment

      public void increment(org.apache.hadoop.hbase.thrift.generated.TIncrement tincrement) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Increment a cell by the ammount. Increments can be applied async if hbase.regionserver.thrift.coalesceIncrement is set to true. False is the default. Turn to true if you need the extra performance and can accept some data loss if a thrift server dies with increments still in the queue.
      Specified by:
      increment in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tincrement - The single increment to apply
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • incrementRows

      public void incrementRows(List<org.apache.hadoop.hbase.thrift.generated.TIncrement> tincrements) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Specified by:
      incrementRows in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • append

      public List<org.apache.hadoop.hbase.thrift.generated.TCell> append(org.apache.hadoop.hbase.thrift.generated.TAppend tappend) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Appends values to one or more columns within a single row.
      Specified by:
      append in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tappend - The single append operation to apply
      Returns:
      values of columns after the append operation.
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • checkAndPut

      public boolean checkAndPut(ByteBuffer tableName, ByteBuffer row, ByteBuffer column, ByteBuffer value, org.apache.hadoop.hbase.thrift.generated.Mutation mput, Map<ByteBuffer,ByteBuffer> attributes) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.hadoop.hbase.thrift.generated.IllegalArgument, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Atomically checks if a row/family/qualifier value matches the expected value. If it does, it adds the corresponding mutation operation for put.
      Specified by:
      checkAndPut in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Parameters:
      tableName - name of table
      row - row key
      column - column name
      value - the expected value for the column parameter, if not provided the check is for the non-existence of the column in question
      mput - mutation for the put
      attributes - Mutation attributes
      Returns:
      true if the new put was executed, false otherwise
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
      org.apache.thrift.TException
    • getThriftServerType

      public org.apache.hadoop.hbase.thrift.generated.TThriftServerType getThriftServerType()
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Get the type of this thrift server.
      Specified by:
      getThriftServerType in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Returns:
      the type of this thrift server
    • getClusterId

      public String getClusterId() throws org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Returns the cluster ID for this cluster.
      Specified by:
      getClusterId in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Throws:
      org.apache.thrift.TException
    • grant

      public boolean grant(org.apache.hadoop.hbase.thrift.generated.TAccessControlEntity info) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Grant permissions in namespace or table level.
      Specified by:
      grant in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • revoke

      public boolean revoke(org.apache.hadoop.hbase.thrift.generated.TAccessControlEntity info) throws org.apache.hadoop.hbase.thrift.generated.IOError, org.apache.thrift.TException
      Description copied from interface: org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Revoke permissions in namespace or table level.
      Specified by:
      revoke in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
      Throws:
      org.apache.hadoop.hbase.thrift.generated.IOError
      org.apache.thrift.TException
    • getIOError

      private static org.apache.hadoop.hbase.thrift.generated.IOError getIOError(Throwable throwable)
    • addAttributes

      private static void addAttributes(OperationWithAttributes op, Map<ByteBuffer,ByteBuffer> attributes)
      Adds all the attributes into the Operation object