Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase >> mail # user >> AsyncHBase 1.5.0-rc1 available for download and testing (HBase 0.96 compatibility inside)

Copy link to this message
Re: AsyncHBase 1.5.0-rc1 available for download and testing (HBase 0.96 compatibility inside)
I am trying the new version and run into some problem: details here:
Could u please help? We are trying to migrate to Hadoop 2.2 with HBase
0.96. But this issue blocks the migration of one application.
On Monday, October 28, 2013 9:57:13 PM UTC-7, tsuna wrote:
> Hi all,
> The first release candidate of AsyncHBase "post-singularity" is now
> available for download.  AsyncHBase remains true to its initial
> promise: the API is still backward compatible, but under the hood it
> continues to work with all production releases of HBase of the past
> few years.
> This release was tested against HBase 0.89, 0.90, 0.92, 0.94, and
> 0.96.  While 0.2x probably still works, I didn't take the time to test
> it, because… well, really, you shouldn't be using such ancient version
> of HBase.  Really.
> The Maven build was broken by the addition of protobufs in the build
> process.  Any Maven fans out there who would like to help fix it?
> Without it I can't easily publish new artifacts to Maven repo.
> Here is the relevant excerpt of the NEWS file:
> This release introduces compatibility with HBase 0.96 and up, and adds
> a dependency on Google's protobuf-java library.  Note that HBase 0.95.x,
> which was a "developer preview" release train, is NOT supported.
> Please note that support for explicit row locks has been removed from
> HBase 0.95 and up.  While the classes and functionality remain usable
> when using earlier versions of HBase, an `UnsupportedOperationException'
> will be raised if one attempt to send a `RowLockRequest' to a newer
> version of HBase.
> Please note that while AsyncHBase never made any guarantees about the
> exact order in which multiple edits are applied within a batch, the order
> is now different when talking to HBase 0.96 and up.
> New public APIs:
>   - Scanners can now use a variety of different filters via the new
>     `ScanFilter' interfaces and its various implementations.
>   - It's possible to specify specific families to scan via `setFamilies'.
>   - Scanners can put an upper bound on the amount of data fetched by RPC
>     via the new `setMaxNumKeyValues' (works with HBase 0.96 and up only).
>   - HBaseRpc now has a `failfast()' and a `setFailfast(boolean)' pair
>     of methods to allow RPCs to fail as soon as their encounter an
>     issue out of the ordinary (e.g. not just a `NotSuchRegionException').
>   - `GetRequest' has additional constructor overloads that make its API
>     more uniform with that of other RPCs.
> Noteworthy bug fixes:
>   - DeleteRequest wasn't honoring its timestamp if one was given (#58).
>   - When a connection attempt fails, buffered RPCs weren't cleaned up
>     or retried properly.
>   - When one RPC fails because of another one (e.g. we fail to send an
>     RPC because a META lookup failed), the asynchronous exception that
>     is given to the callback now properly carries the original RPC that
>     failed.
>   - There was an unlikely race condition that could cause an NPE while
>     trying to retrieve the ROOT region from ZooKeeper.
> Pre-compiled JAR:
> http://tsunanet.net/~tsuna/asynchbase/asynchbase-1.5.0-rc1.jar
> Source: https://github.com/tsuna/asynchbase
> Javadoc:
> http://tsunanet.net/~tsuna/asynchbase/1.5.0/org/hbase/async/HBaseClient.html
> $ git diff --stat v1.4.1.. | tail -n 1
>  70 files changed, 4824 insertions(+), 487 deletions(-)
> $ git shortlog v1.4.1..
> Andrey Stepachev (1):
>       Add support for multiple families/qualifiers in scanners.
> Benoit Sigoure (65):
>       Start v1.5.0.
>       Add Viral to AUTHORS for his work on ScanFilter.
>       Document ScanFilter and prevent it from being subclassed externally.
>       Convert the regexp key filtering mechanism to the ScanFilter.
>       Document how to run integration tests.
>       Enhance filters a bit and add integration tests.
>       Add a new helper function to produce better errors during tests.