Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
|
#include <hbase-table-scanner.h>
Classes | |
class | ScanRange |
HBase scan range; "" means unbounded. More... | |
Public Types | |
typedef std::vector< ScanRange > | ScanRangeVector |
Public Member Functions | |
HBaseTableScanner (HBaseScanNode *scan_node, HBaseTableFactory *htable_factory, RuntimeState *state) | |
Status | StartScan (JNIEnv *env, const TupleDescriptor *tuple_desc, const ScanRangeVector &scan_range_vector, const std::vector< THBaseFilter > &filters) |
Status | Next (JNIEnv *env, bool *has_next) |
Status | GetRowKey (JNIEnv *env, void **key, int *key_length) |
Get the current HBase row key. More... | |
Status | GetRowKey (JNIEnv *env, const SlotDescriptor *slot_desc, Tuple *tuple) |
Status | GetValue (JNIEnv *env, const std::string &family, const std::string &qualifier, void **value, int *value_length) |
Status | GetValue (JNIEnv *env, const std::string &family, const std::string &qualifier, const SlotDescriptor *slot_desc, Tuple *tuple) |
void | Close (JNIEnv *env) |
Close HTable and ResultScanner. More... | |
void | set_num_requested_cells (int num_requested_cells) |
Static Public Member Functions | |
static Status | Init () |
Private Member Functions | |
Status | HandleResultScannerTimeout (JNIEnv *env, bool *timeout) |
int | CompareStrings (const std::string &s, void *data, int length) |
Status | CreateByteArray (JNIEnv *env, const std::string &s, jbyteArray *bytes) |
Turn strings into Java byte array. More... | |
Status | ScanSetup (JNIEnv *env, const TupleDescriptor *tuple_desc, const std::vector< THBaseFilter > &filters) |
First time scanning the table, do some setup. More... | |
Status | InitScanRange (JNIEnv *env, const ScanRange &scan_range) |
Initialize the scan to the given range. More... | |
Status | InitScanRange (JNIEnv *env, jbyteArray start_bytes, jbyteArray end_bytes) |
void | GetRowKey (JNIEnv *env, jobject cell, void **data, int *length) |
Copies the row key of cell into value_pool_ and returns it via *data and *length. More... | |
void | GetFamily (JNIEnv *env, jobject cell, void **data, int *length) |
void | GetQualifier (JNIEnv *env, jobject cell, void **data, int *length) |
void | GetValue (JNIEnv *env, jobject cell, void **data, int *length) |
Copies the value of cell into value_pool_ and returns it via *data and *length. More... | |
Status | GetCurrentValue (JNIEnv *env, const std::string &family, const std::string &qualifier, void **data, int *length, bool *is_null) |
void | WriteTupleSlot (const SlotDescriptor *slot_desc, Tuple *tuple, void *data) |
Private Attributes | |
HBaseScanNode * | scan_node_ |
The enclosing HBaseScanNode. More... | |
RuntimeState * | state_ |
HBaseTableFactory * | htable_factory_ |
HBase Table factory from runtime state. More... | |
const ScanRangeVector * | scan_range_vector_ |
Vector of ScanRange. More... | |
int | current_scan_range_idx_ |
boost::scoped_ptr< HBaseTable > | htable_ |
C++ wrapper for HTable. More... | |
jobject | scan_ |
jobject | resultscanner_ |
jobjectArray | cells_ |
int | cell_index_ |
Current position in cells_. Incremented in NextValue(). Reset in Next(). More... | |
int | num_requested_cells_ |
int | num_addl_requested_cols_ |
int | num_cells_ |
Number of cells returned from last result_.raw(). More... | |
bool | all_cells_present_ |
boost::scoped_ptr< MemPool > | value_pool_ |
int | rows_cached_ |
bool | cache_blocks_ |
True if the scanner should set Scan.setCacheBlocks to true. More... | |
RuntimeProfile::Counter * | scan_setup_timer_ |
HBase specific counters. More... | |
Static Private Attributes | |
static const int | DEFAULT_ROWS_CACHED = 1024 |
static jclass | scan_cl_ = NULL |
Global class references created with JniUtil. Cleanup is done in JniUtil::Cleanup(). More... | |
static jclass | resultscanner_cl_ = NULL |
static jclass | result_cl_ = NULL |
static jclass | cell_cl_ = NULL |
Cell or KeyValue class depending on HBase version (see class comment). More... | |
static jclass | hconstants_cl_ = NULL |
static jclass | filter_list_cl_ = NULL |
static jclass | filter_list_op_cl_ = NULL |
static jclass | single_column_value_filter_cl_ = NULL |
static jclass | compare_op_cl_ = NULL |
static jclass | scanner_timeout_ex_cl_ = NULL |
Exception thrown when a ResultScanner times out. More... | |
static jmethodID | scan_ctor_ = NULL |
static jmethodID | scan_set_max_versions_id_ = NULL |
static jmethodID | scan_set_caching_id_ = NULL |
static jmethodID | scan_set_cache_blocks_id_ = NULL |
static jmethodID | scan_add_column_id_ = NULL |
static jmethodID | scan_set_filter_id_ = NULL |
static jmethodID | scan_set_start_row_id_ = NULL |
static jmethodID | scan_set_stop_row_id_ = NULL |
static jmethodID | resultscanner_next_id_ = NULL |
static jmethodID | resultscanner_close_id_ = NULL |
static jmethodID | result_isempty_id_ = NULL |
static jmethodID | result_raw_cells_id_ = NULL |
static jmethodID | cell_get_row_array_ = NULL |
static jmethodID | cell_get_family_array_ = NULL |
static jmethodID | cell_get_qualifier_array_ = NULL |
static jmethodID | cell_get_value_array_ = NULL |
static jmethodID | cell_get_family_offset_id_ = NULL |
static jmethodID | cell_get_family_length_id_ = NULL |
static jmethodID | cell_get_qualifier_offset_id_ = NULL |
static jmethodID | cell_get_qualifier_length_id_ = NULL |
static jmethodID | cell_get_row_offset_id_ = NULL |
static jmethodID | cell_get_row_length_id_ = NULL |
static jmethodID | cell_get_value_offset_id_ = NULL |
static jmethodID | cell_get_value_length_id_ = NULL |
static jmethodID | filter_list_ctor_ = NULL |
static jmethodID | filter_list_add_filter_id_ = NULL |
static jmethodID | single_column_value_filter_ctor_ = NULL |
static jobject | empty_row_ = NULL |
static jobject | must_pass_all_op_ = NULL |
static jobjectArray | compare_ops_ = NULL |
JNI wrapper class implementing minimal functionality for scanning an HBase table. Caching behavior is tuned by setting hbase.client.Scan.setCaching() and hbase.client.setCacheBlocks(). hbase.client.setCacheBlocks() is controlled by query option hbase_cache_blocks. When set to true, HBase region server will cache the blocks. Subsequent retrieval of the same data will be faster. If the table is large and the query is doing big scan, it should be set to false to avoid polluting the cache in the hbase region server. On the other hand, if the table is small and will be used several time, set it to true to improve query performance. hbase.client.Scan.setCaching() is DEFAULT_ROWS_CACHED by default. This value controls the number of rows batched together when fetching from a HBase region server. Having a high value will put more memory pressure on the HBase region server and having a small value will cause extra round trips to the HBase region server. This value can be overridden by the query option hbase_caching. FE will also suggest a max value such that it won't put too much memory pressure on the region server. HBase version compatibility: Starting from HBase 0.95.2 result rows are represented by Cells instead of KeyValues (prior HBase versions). To mitigate this API incompatibility the Cell class and its methods are replaced with corresponding KeyValue equivalents if the Cell is not found in the classpath. The HBase version detection and KeyValue/Cell replacements are performed in Init(). Note: When none of the requested family/qualifiers exist in a particular row, HBase will not return the row at all, leading to "missing" NULL values. TODO: Related to filtering, there is a special filter that allows only selecting the cells. Currently, if only the row key is requested all cells are fetched from HBase (since there is no family/qualifier restriction). TODO: Enable time travel.
Definition at line 68 of file hbase-table-scanner.h.
typedef std::vector<ScanRange> impala::HBaseTableScanner::ScanRangeVector |
Definition at line 101 of file hbase-table-scanner.h.
HBaseTableScanner::HBaseTableScanner | ( | HBaseScanNode * | scan_node, |
HBaseTableFactory * | htable_factory, | ||
RuntimeState * | state | ||
) |
Initialize all members to NULL, except ScanNode and HTable cache scan_node is the enclosing hbase scan node and its performance counter will be updated.
Definition at line 84 of file hbase-table-scanner.cc.
References cache_blocks_, DEFAULT_ROWS_CACHED, impala::RuntimeState::query_options(), rows_cached_, scan_node_, and impala::HBaseScanNode::suggested_max_caching().
void HBaseTableScanner::Close | ( | JNIEnv * | env | ) |
Close HTable and ResultScanner.
Definition at line 719 of file hbase-table-scanner.cc.
References cells_, impala::JniUtil::GetJniExceptionMsg(), htable_, resultscanner_, resultscanner_close_id_, scan_, scanner_timeout_ex_cl_, state_, and value_pool_.
|
private |
Lexicographically compares s with the string in data having given length. Returns a value > 0 if s is greater, a value < 0 if s is smaller, and 0 if they are equal.
Definition at line 706 of file hbase-table-scanner.cc.
Referenced by GetCurrentValue().
|
private |
Turn strings into Java byte array.
Definition at line 486 of file hbase-table-scanner.cc.
References empty_row_, and impala::Status::OK.
Referenced by HandleResultScannerTimeout(), InitScanRange(), and ScanSetup().
|
inlineprivate |
Returns the current value of cells_[cell_index_] in *data and *length if its family/qualifier match the given family/qualifier. Otherwise, sets *is_null to true indicating a mismatch in family or qualifier.
Definition at line 641 of file hbase-table-scanner.cc.
References all_cells_present_, cell_index_, cells_, CompareStrings(), GetFamily(), GetQualifier(), GetValue(), num_cells_, impala::Status::OK, impala::JniLocalFrame::push(), and RETURN_IF_ERROR.
|
inlineprivate |
Copies the column family of cell into value_pool_ and returns it via *data and *length.
Definition at line 589 of file hbase-table-scanner.cc.
References impala::ScanNode::bytes_read_counter(), cell_get_family_array_, cell_get_family_length_id_, cell_get_family_offset_id_, COUNTER_ADD, offset, scan_node_, and value_pool_.
Referenced by GetCurrentValue().
|
inlineprivate |
Copies the column qualifier of cell into value_pool_ and returns it via *data and *length.
Definition at line 600 of file hbase-table-scanner.cc.
References impala::ScanNode::bytes_read_counter(), cell_get_qualifier_array_, cell_get_qualifier_length_id_, cell_get_qualifier_offset_id_, COUNTER_ADD, offset, scan_node_, and value_pool_.
Referenced by GetCurrentValue().
Status HBaseTableScanner::GetRowKey | ( | JNIEnv * | env, |
void ** | key, | ||
int * | key_length | ||
) |
Get the current HBase row key.
Definition at line 622 of file hbase-table-scanner.cc.
References cells_, impala::Status::OK, and RETURN_ERROR_IF_EXC.
Referenced by GetRowKey().
Status HBaseTableScanner::GetRowKey | ( | JNIEnv * | env, |
const SlotDescriptor * | slot_desc, | ||
Tuple * | tuple | ||
) |
Write the current HBase row key into the tuple slot. This is used for retrieving binary encoded data directly into the tuple.
Definition at line 629 of file hbase-table-scanner.cc.
References cells_, impala::ColumnType::GetByteSize(), GetRowKey(), impala::Status::OK, RETURN_ERROR_IF_EXC, impala::SlotDescriptor::type(), and WriteTupleSlot().
|
inlineprivate |
Copies the row key of cell into value_pool_ and returns it via *data and *length.
Definition at line 578 of file hbase-table-scanner.cc.
References impala::ScanNode::bytes_read_counter(), cell_get_row_array_, cell_get_row_length_id_, cell_get_row_offset_id_, COUNTER_ADD, offset, scan_node_, and value_pool_.
Status impala::HBaseTableScanner::GetValue | ( | JNIEnv * | env, |
const std::string & | family, | ||
const std::string & | qualifier, | ||
void ** | value, | ||
int * | value_length | ||
) |
Used to fetch HBase values in order of family/qualifier. Fetch the next value matching family and qualifier into value/value_length. If there is no match, value is set to NULL and value_length to 0.
Referenced by GetCurrentValue().
Status impala::HBaseTableScanner::GetValue | ( | JNIEnv * | env, |
const std::string & | family, | ||
const std::string & | qualifier, | ||
const SlotDescriptor * | slot_desc, | ||
Tuple * | tuple | ||
) |
Used to fetch HBase values in order of family/qualifier. Fetch the next value matching family and qualifier into the tuple slot. If there is no match, the tuple slot is set to null. This is used for retrieving binary encoded data directly into the tuple.
|
inlineprivate |
Copies the value of cell into value_pool_ and returns it via *data and *length.
Definition at line 611 of file hbase-table-scanner.cc.
References impala::ScanNode::bytes_read_counter(), cell_get_value_array_, cell_get_value_length_id_, cell_get_value_offset_id_, COUNTER_ADD, offset, scan_node_, and value_pool_.
Checks for and handles a ScannerTimeoutException which is thrown if the ResultScanner times out. If a timeout occurs, the ResultScanner is re-created (with the scan range adjusted if some results have already been returned) and the exception is cleared. If any other exception is thrown, the error message is returned in the status. 'timeout' is true if a ScannerTimeoutException was thrown, false otherwise.
Definition at line 406 of file hbase-table-scanner.cc.
References cell_get_row_array_, cell_index_, cells_, CreateByteArray(), current_scan_range_idx_, impala::JniUtil::GetJniExceptionMsg(), InitScanRange(), num_cells_, impala::Status::OK, impala::JniLocalFrame::push(), RETURN_IF_ERROR, scanner_timeout_ex_cl_, and impala::HBaseTableScanner::ScanRange::stop_key().
Referenced by Next().
|
static |
JNI setup. Create global references to classes, and find method ids.
Definition at line 113 of file hbase-table-scanner.cc.
References cell_cl_, cell_get_family_array_, cell_get_family_length_id_, cell_get_family_offset_id_, cell_get_qualifier_array_, cell_get_qualifier_length_id_, cell_get_qualifier_offset_id_, cell_get_row_array_, cell_get_row_length_id_, cell_get_row_offset_id_, cell_get_value_array_, cell_get_value_length_id_, cell_get_value_offset_id_, impala::JniUtil::ClassExists(), compare_op_cl_, compare_ops_, empty_row_, filter_list_add_filter_id_, filter_list_cl_, filter_list_ctor_, filter_list_op_cl_, impala::JniUtil::GetGlobalClassRef(), getJNIEnv(), hconstants_cl_, impala::JniUtil::LocalToGlobalRef(), must_pass_all_op_, impala::Status::OK, result_cl_, result_isempty_id_, result_raw_cells_id_, resultscanner_cl_, resultscanner_close_id_, resultscanner_next_id_, RETURN_ERROR_IF_EXC, RETURN_IF_ERROR, scan_add_column_id_, scan_cl_, scan_ctor_, scan_set_cache_blocks_id_, scan_set_caching_id_, scan_set_filter_id_, scan_set_max_versions_id_, scan_set_start_row_id_, scan_set_stop_row_id_, scanner_timeout_ex_cl_, single_column_value_filter_cl_, and single_column_value_filter_ctor_.
Referenced by main().
Initialize the scan to the given range.
Definition at line 435 of file hbase-table-scanner.cc.
References CreateByteArray(), impala::JniLocalFrame::push(), RETURN_IF_ERROR, impala::HBaseTableScanner::ScanRange::start_key(), and impala::HBaseTableScanner::ScanRange::stop_key().
Referenced by HandleResultScannerTimeout(), Next(), and StartScan().
|
private |
Initialize the scan range to the scan range specified by the start and end byte arrays
Definition at line 445 of file hbase-table-scanner.cc.
References htable_, impala::Status::OK, resultscanner_, resultscanner_close_id_, RETURN_ERROR_IF_EXC, RETURN_IF_ERROR, scan_, scan_set_start_row_id_, and scan_set_stop_row_id_.
Position cursor to next row. Sets has_next to true if more rows exist, false otherwise. Returns non-ok status if an error occurred.
Definition at line 501 of file hbase-table-scanner.cc.
References all_cells_present_, cell_index_, cells_, current_scan_range_idx_, HandleResultScannerTimeout(), InitScanRange(), num_addl_requested_cols_, num_cells_, num_requested_cells_, impala::Status::OK, impala::JniLocalFrame::push(), impala::ScanNode::read_timer(), result_isempty_id_, result_raw_cells_id_, resultscanner_, resultscanner_next_id_, RETURN_ERROR_IF_EXC, RETURN_IF_ERROR, scan_node_, scan_range_vector_, SCOPED_TIMER, and value_pool_.
|
private |
First time scanning the table, do some setup.
Definition at line 290 of file hbase-table-scanner.cc.
References cache_blocks_, compare_ops_, CreateByteArray(), filter_list_add_filter_id_, filter_list_cl_, filter_list_ctor_, impala::HBaseTableFactory::GetTable(), htable_, htable_factory_, must_pass_all_op_, num_addl_requested_cols_, impala::Status::OK, impala::JniLocalFrame::push(), RETURN_ERROR_IF_EXC, RETURN_IF_ERROR, rows_cached_, scan_, scan_add_column_id_, scan_cl_, scan_ctor_, scan_set_cache_blocks_id_, scan_set_caching_id_, scan_set_filter_id_, scan_set_max_versions_id_, scan_setup_timer_, SCOPED_TIMER, single_column_value_filter_cl_, single_column_value_filter_ctor_, impala::TupleDescriptor::slots(), and impala::TupleDescriptor::table_desc().
Referenced by StartScan().
|
inline |
Definition at line 138 of file hbase-table-scanner.h.
References num_requested_cells_.
Status HBaseTableScanner::StartScan | ( | JNIEnv * | env, |
const TupleDescriptor * | tuple_desc, | ||
const ScanRangeVector & | scan_range_vector, | ||
const std::vector< THBaseFilter > & | filters | ||
) |
Perform a table scan, retrieving the families/qualifiers referenced in tuple_desc. If start_/stop_key is not empty, is used for the corresponding role in the scan. Note: scan_range_vector cannot be modified for the duration of the scan.
Definition at line 469 of file hbase-table-scanner.cc.
References current_scan_range_idx_, InitScanRange(), resultscanner_, RETURN_IF_ERROR, scan_range_vector_, and ScanSetup().
|
inlineprivate |
Write to a tuple slot with the given hbase binary formatted data, which is in big endian. Only boolean, tinyint, smallint, int, bigint, float and double should have binary formatted data.
Definition at line 572 of file hbase-table-scanner.cc.
References impala::BitUtil::ByteSwap(), impala::ColumnType::GetByteSize(), impala::Tuple::GetSlot(), impala::SlotDescriptor::tuple_offset(), and impala::SlotDescriptor::type().
Referenced by GetRowKey().
|
private |
Indicates whether all requested cells are present in the current cells_. If set to true, all family/qualifier comparisons are avoided in NextValue().
Definition at line 231 of file hbase-table-scanner.h.
Referenced by GetCurrentValue(), and Next().
|
private |
True if the scanner should set Scan.setCacheBlocks to true.
Definition at line 242 of file hbase-table-scanner.h.
Referenced by HBaseTableScanner(), and ScanSetup().
|
staticprivate |
Cell or KeyValue class depending on HBase version (see class comment).
Definition at line 154 of file hbase-table-scanner.h.
Referenced by Init().
|
staticprivate |
Definition at line 176 of file hbase-table-scanner.h.
Referenced by GetFamily(), and Init().
|
staticprivate |
Definition at line 180 of file hbase-table-scanner.h.
Referenced by GetFamily(), and Init().
|
staticprivate |
Definition at line 179 of file hbase-table-scanner.h.
Referenced by GetFamily(), and Init().
|
staticprivate |
Definition at line 177 of file hbase-table-scanner.h.
Referenced by GetQualifier(), and Init().
|
staticprivate |
Definition at line 182 of file hbase-table-scanner.h.
Referenced by GetQualifier(), and Init().
|
staticprivate |
Definition at line 181 of file hbase-table-scanner.h.
Referenced by GetQualifier(), and Init().
|
staticprivate |
Definition at line 175 of file hbase-table-scanner.h.
Referenced by GetRowKey(), HandleResultScannerTimeout(), and Init().
|
staticprivate |
Definition at line 184 of file hbase-table-scanner.h.
Referenced by GetRowKey(), and Init().
|
staticprivate |
Definition at line 183 of file hbase-table-scanner.h.
Referenced by GetRowKey(), and Init().
|
staticprivate |
Definition at line 178 of file hbase-table-scanner.h.
Referenced by GetValue(), and Init().
|
staticprivate |
Definition at line 186 of file hbase-table-scanner.h.
Referenced by GetValue(), and Init().
|
staticprivate |
Definition at line 185 of file hbase-table-scanner.h.
Referenced by GetValue(), and Init().
|
private |
Current position in cells_. Incremented in NextValue(). Reset in Next().
Definition at line 216 of file hbase-table-scanner.h.
Referenced by GetCurrentValue(), HandleResultScannerTimeout(), and Next().
|
private |
Helper members for retrieving results from a scan. Updated in Next() and used by GetRowKey() and GetValue(). Result of resultscanner_.next().raw() Java type Cell[] or KeyValue[] depending on HBase version.
Definition at line 213 of file hbase-table-scanner.h.
Referenced by Close(), GetCurrentValue(), GetRowKey(), HandleResultScannerTimeout(), and Next().
|
staticprivate |
Definition at line 159 of file hbase-table-scanner.h.
Referenced by Init().
|
staticprivate |
Definition at line 193 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
private |
Definition at line 200 of file hbase-table-scanner.h.
Referenced by HandleResultScannerTimeout(), Next(), and StartScan().
|
staticprivate |
Definition at line 143 of file hbase-table-scanner.h.
Referenced by HBaseTableScanner().
|
staticprivate |
Definition at line 191 of file hbase-table-scanner.h.
Referenced by CreateByteArray(), and Init().
|
staticprivate |
Definition at line 188 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 156 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 187 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 157 of file hbase-table-scanner.h.
Referenced by Init().
|
staticprivate |
Definition at line 155 of file hbase-table-scanner.h.
Referenced by Init().
|
private |
C++ wrapper for HTable.
Definition at line 203 of file hbase-table-scanner.h.
Referenced by Close(), InitScanRange(), and ScanSetup().
|
private |
HBase Table factory from runtime state.
Definition at line 196 of file hbase-table-scanner.h.
Referenced by ScanSetup().
|
staticprivate |
Definition at line 192 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
private |
number of cols requested in addition to num_requested_cells_, to work around hbase bug
Definition at line 224 of file hbase-table-scanner.h.
Referenced by Next(), and ScanSetup().
|
private |
Number of cells returned from last result_.raw().
Definition at line 227 of file hbase-table-scanner.h.
Referenced by GetCurrentValue(), HandleResultScannerTimeout(), and Next().
|
private |
Number of requested cells (i.e., the number of added family/qualifier pairs). Set in StartScan().
Definition at line 220 of file hbase-table-scanner.h.
Referenced by Next(), and set_num_requested_cells().
|
staticprivate |
Definition at line 152 of file hbase-table-scanner.h.
Referenced by Init().
|
staticprivate |
Definition at line 173 of file hbase-table-scanner.h.
|
staticprivate |
Definition at line 174 of file hbase-table-scanner.h.
|
private |
Definition at line 208 of file hbase-table-scanner.h.
Referenced by Close(), InitScanRange(), Next(), and StartScan().
|
staticprivate |
Definition at line 151 of file hbase-table-scanner.h.
Referenced by Init().
|
staticprivate |
Definition at line 172 of file hbase-table-scanner.h.
Referenced by Close(), Init(), and InitScanRange().
|
staticprivate |
Definition at line 171 of file hbase-table-scanner.h.
|
private |
Number of rows for caching that will be passed to scanners. Set in the HBase call Scan.setCaching();
Definition at line 239 of file hbase-table-scanner.h.
Referenced by HBaseTableScanner(), and ScanSetup().
|
private |
Instances related to scanning a table. Set in StartScan(). They are global references because they cannot be automatically garbage collected by the JVM.
Definition at line 207 of file hbase-table-scanner.h.
Referenced by Close(), InitScanRange(), and ScanSetup().
|
staticprivate |
Definition at line 167 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Global class references created with JniUtil. Cleanup is done in JniUtil::Cleanup().
Definition at line 150 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 163 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
private |
The enclosing HBaseScanNode.
Definition at line 146 of file hbase-table-scanner.h.
Referenced by GetFamily(), GetQualifier(), GetRowKey(), GetValue(), HBaseTableScanner(), and Next().
|
private |
Vector of ScanRange.
Definition at line 199 of file hbase-table-scanner.h.
Referenced by Next(), and StartScan().
|
staticprivate |
Definition at line 166 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 165 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 168 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 164 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 169 of file hbase-table-scanner.h.
Referenced by Init(), and InitScanRange().
|
staticprivate |
Definition at line 170 of file hbase-table-scanner.h.
Referenced by Init(), and InitScanRange().
|
private |
HBase specific counters.
Definition at line 245 of file hbase-table-scanner.h.
Referenced by ScanSetup().
|
staticprivate |
Exception thrown when a ResultScanner times out.
Definition at line 161 of file hbase-table-scanner.h.
Referenced by Close(), HandleResultScannerTimeout(), and Init().
|
staticprivate |
Definition at line 158 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
staticprivate |
Definition at line 189 of file hbase-table-scanner.h.
Referenced by Init(), and ScanSetup().
|
private |
Definition at line 147 of file hbase-table-scanner.h.
Referenced by Close().
|
private |
Pool for allocating keys/values retrieved from HBase. Memory allocated from this pool is valid until the following Next().
Definition at line 235 of file hbase-table-scanner.h.
Referenced by Close(), GetFamily(), GetQualifier(), GetRowKey(), GetValue(), and Next().