Release date: not yet released
- Add support for retrieving sorted columns, which is possible with the
HBase 0.96 Thrift API. This feature uses a new sorted_columns argument
to Table.scan() (issue #39).
Release date: 2013-11-06
- Added a wal argument to various data manipulation methods on the
Table and Batch classes to determine whether to write
the mutation to the Write-Ahead Log (WAL). (issue #36).
- Pass batch_size to underlying Thrift Scan instance (issue #38).
- Expose server name and port in Table.regions() (recent HBase versions
only) (issue #37).
- Regenerated bundled Thrift API modules using a recent upstream Thrift API
definition. This is required to expose newly added API.
Release date: 2013-06-12
- Rewrote exception handling in connection pool. Exception handling is now a lot
cleaner and does not introduce cyclic references anymore. (issue #25).
- Regenerated bundled Thrift code using Thrift 0.9.0 with the new-style classes
flag (issue #27).
Release date: 2013-05-24
- Added a thread-safe connection pool (ConnectionPool) to keep
connections open and share them between threads (issue #21).
- The Connection.delete_table() method now features an optional
disable parameter to make deleting enabled tables easier.
- The debug log message emitted by Table.scan() when closing a scanner
now includes both the number of rows returned to the calling code, 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. If this happens often, and the
differences are big, this may be a hint that the batch_size parameter to
Table.scan() is not optimal for your application.
- Increased Thrift dependency to at least 0.8. Older versions are no longer
available from PyPI. HappyBase should not be used with obsoleted Thrift
- The Connection constructor now features an optional timeout
parameter to to specify the timeout to use for the Thrift socket (issue #15)
- The timestamp argument to various methods now also accepts long values in
addition to int values. This fixes problems with large timestamp values on
32-bit systems. (issue #23).
- In some corner cases exceptions were raised during interpreter shutdown while
closing any remaining open connections. (issue #18)
Release date: 2012-07-11
- Add an optional table_prefix_separator argument to the
Connection constructor, to specify the prefix used for the
table_prefix argument (issue #3)
- Add support for framed Thrift transports using a new optional transport
argument to Connection (issue #6)
- Add the Apache license conditions in the license statement
(for the included HBase parts)
- Documentation improvements
Release date: 2012-05-25
- Improved compatibility with HBase 0.90.x
- In earlier versions, using Table.scan() in combination with HBase
0.90.x often resulted in crashes, caused by incompatibilities in the
underlying Thrift protocol.
- A new compat flag to the Connection constructor has been
added to enable compatibility with HBase 0.90.x.
- Note that the Table.scan() API has a few limitations when used
with HBase 0.90.x.
- The row_prefix argument to Table.scan() can now be used together
with filter and timestamp arguments.
- Lower Thrift dependency to 0.6
- The setup.py script no longer installs the tests
- Documentation improvements
Release date: 2012-05-22
- Fix package installation, so that pip install happybase works as expected
- Various small documentation improvements
Release date: 2012-05-20