The debug message emitted after closing a scanner now includes both the number of rows returned from the generator function, and also the number of rows actually fetched from the server. If scanners are not completely iterated over (e.g. because of a 'break' statement in the for loop for the scanner), these numbers may differ significantly. If this happens often, this may be a hint that the batch_size is not optimal.
The Connection constructor now features 'transport' parameter that specifies the Thrift transport to use. Fixes issue #6.
See issue #6. Add initial support for TFramedTransport in addition to TBufferedTransport. This means HappyBase can connect to the different Thrift server implementations in HBase 0.94.x. This is required for the nonblocking, threadedselector, and hsha implementation. The threadpool implementation requires TBufferedTransport. This change is not exposed in the API yet.
Also cleanup error handling in the constructor. Closes issue #3.
The Thrift API is limited, and this at least avoids low level exceptions with ugly backtraces that give no clue at all what the real problem is.
Avoid the scannerOpenWithPrefix() Thrift function by implementing the prefix matching logic on the client side, and using scannerOpenWithScan afterwards. The result is that prefix scans now support both 'timestamp' and 'filter' parameters, whereas that raised NotImplementedError before.