I am very happy to say that the second HBase 0.99.0 release candidate (RC1) is available for download at https://people.apache.org/~enis/hbase-0.99.0RC1/
Maven artifacts are also available in the temporary repository https://repository.apache.org/content/repositories/orgapachehbase-1039/ Signed with my code signing key E964B5FF. Can be found here: https://people.apache.org/keys/committer/enis.asc Signed tag in the repository can be found here: https://git-wip-us.apache.org/repos/asf?p=hbase.git;a=tag;h=336a63b5f58bb1c4859e3c2b6a2f5c0d68a7d9e1 NOTE IN GIGANTIC LETTERS THAT THIS IS A DEVELOPER RELEASE. DO NOT USE THIS RELEASE IN PRODUCTION. HBase 0.99.0 is a "developer preview" release, and an odd-numbered release as defined in https://hbase.apache.org/book/upgrading.html#hbase.versioning. This release IS NOT intended for production use, and does not contain any backwards or forwards compatibility guarantees (even within minor versions 0.99.x). Please refrain from deploying this over important data. 0.99.0 release is provided from branch-1, which will be the basis for HBase-1.0 release. A few 0.99.x releases are planned before 1.0. The reason for doing a developer preview release is to get more testing for the branch-1 code that will be released soon as HBase-1.0.0. Thus, all contribution in terms of testing, benchmarking, checking API / source /wire compatibility, checking out documentation and further code contribution is highly appreciated. 1.0 will be the first series in the 1.x line of releases which are expected to keep compatibility with previous 1.x releases. Thus it is very important to check the client side and server side APIs for compatibility and maintainability concerns for future releases. 0.99.0 contains slightly more than 1K issues resolved with many improvements and bug fixes. The theme of (eventual) 1.0 release is to become a stable base for future 1.x series of releases. 1.0 release will aim to achieve at least the same level of stability of 0.98 releases without introducing too many new features. Some work has been under way to clearly mark and differentiate client facing APIs, and redefine some of the client interfaces for improving semantics, easy of use and maintainability. 0.99.0 contains some of the completed items, and the rest can be found HBASE-10602. Marking/remarking of interfaces with InterfaceAudience has also been going on, which will identify areas for compatibility (with clients, coprocessors and dependent projects like Phoenix) for future releases. Starting with 0.99.0, the HBase master server and backup master servers will also act as a region server. RPC port and info port for web UI is shared for the master and region server roles. Active master and backup masters by default will NOT be hosting any regions unless configured otherwise. See HBASE-10569 and HBASE-11604 for more details. This release contains Phase 1 items for experimental "Read availability using timeline consistent region replicas" feature. A region can be hosted in multiple region servers in read-only mode. One of the replicas for the region will be primary, accepting writes, and other replicas will be sharing the same data files. Read requests can be done against any replica for the region with backup RPCs for high availability with timeline consistency guarantees. More information can be found at HBASE-10070. Other notable improvements in this release are - Automatic tuning of global memstore and block cache sizes - Various security, tags and visibility labels improvements - Bucket cache improvements (usability and compressed data blocks) - A new pluggable replication endpoint to plug in to HBase's inter-cluster replication to replicate to a custom data store - A Dockerfile to easily build and run HBase from source - Internal refactoring for abstracting away zookeeper usage - Truncate table command - Region assignment to use hbase:meta table instead of zookeeper for faster region assignment (disabled by default) - Better support for Cell interface internally in read and write paths for better performance and flexibility - Combining internal mvcc and seqId infrastructure - Extensive documentation improvements - Numerous improvements in other areas and bug fixes. The release has these changes in default behaviour: - hfile version 3 has been enabled by default - Distributed log replay has been enabled by default - Slab cache has been removed (use bucket cache instead) - Some client facing APIs (HTableInterface, etc) has been deprecated and replaced. We have also adopted an orca as the mascot for Apache HBase. See it at https://hbase.apache.org/ Thanks for everybody who have contributed to this release. Full list of the issues can be found here: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310753&version=12325675 Compatibility ------------- 0.99.x series of releases are preview of upcoming 1.0 release. HBase-1.0 is planned to be wire compatible with 0.98.x and 0.96.x releases. Clients and servers running in different versions as long as new features are not used should be possible. A rolling upgrade from 0.98.x clusters to 0.99.0 is supported as well. 0.99.0 introduces a new file format (hfile v3) that is enabled by default that 0.96.x code cannot read. Rolling upgrade from 0.96 directly to 0.99 is not tested. Direct migration from 0.94.x is also supported but it IS NOT tested. Before HBase-1.0 we expect to complete the test. Binary compatibility at the Java API layer with earlier versions (0.98.x, 0.96.x and 0.94.x) is not supported. You may have to recompile your client code and any server side code (coprocessors, filters etc) referring to hbase jars. 0.99.0 release introduces new APIs, and deprecates some of commonly-used client side APIs (HTableInterface, etc). However, client side code is expected to be source compatible with earlier versions. However we advise to update your application to use the new style of APIs, since deprecated APIs might be removed in future releases (2.x). Supported Hadoop versions ------------------------- 0.99.0 release drops support for Hadoop-1.x releases. Only Hadoop-2.x releases are supported. Hadoop-2.4.x and Hadoop-2.5.x releases are the most tested hadoop releases and we recommend running with those versions. Earlier Hadoop-2 based releases (hadoop-2.2.x and 2.3.x) are not tested to the full extend. More information can be found here: https://hbase.apache.org/book/configuration.html#hadoop Supported Java versions ------------------------- 0.99.0 release drops support for JDK6. Only JDK7 is supported. JDK8 support is experimental. More information can be found here: https://hbase.apache.org/book/configuration.html#java Voting ------ Please try to test and vote on this release by 09/19/2014 11:59PM PDT. This is a developer (beta) release, so we have a shorter vote time. [] +1 Release the artifacts as 0.99.0 [] -1 DO NOT release the artifacts as 0.99.0, because... Thanks for helping to get a stable release out! Enis