The first release candidate for the second release from branch-1, HBase
0.99.1 RC0, is
available for download at https://people.apache.org/~enis/hbase-0.99.1RC0/

Maven artifacts are also available in the temporary repository
https://repository.apache.org/content/repositories/orgapachehbase-1043/

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=1563ccf209d4352a40ddd229d8264d7bfee1904e

NOTE IN GIGANTIC LETTERS THAT THIS IS A DEVELOPER RELEASE.
DO NOT USE THIS RELEASE IN PRODUCTION.

HBase 0.99.1 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.1 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.1 builds on top of all the changes that is in the 0.99.0 release (an
overview can be found at [1]). 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.

The work to clearly mark and differentiate client facing  APIs, and
redefine
some of the client interfaces for improving semantics, easy of use and
maintainability has continued in 0.99.1 release. Remaining work can
be found in 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.

0.99.1 changes some of the behavior for master / region colocation that was
introduced in 0.99.0 (see [1]). Now, the backup masters can no longer host
any regions. And active master can host regions of defined tables if
configured. Otherwise, it will not show up the region server UI similar to
a 0.98 deployment. Though master and region server still shares the same
rpc
ports. Details can be found here (HBASE-12034 and HBASE-10569).

Some other notable improvements in this release are
 - [HBASE-11178] - Remove deprecation annotations from mapred namespace
 - [HBASE-11920] - Add CP hooks for ReplicationEndPoint
 - [HBASE-11997] - CopyTable with bulkload
 - [HBASE-12059] - Create hbase-annotations module
 - [HBASE-11990] - Make setting the start and stop row for a specific
prefix easier
 - [HBASE-12220] - Add hedgedReads and hedgedReadWins metrics
 - [HBASE-12090] - Bytes: more Unsafe, more Faster
 - [HBASE-12032] - Script to stop regionservers via RPC
 - [HBASE-11907] - Use the joni byte[] regex engine in place of j.u.regex
in RegexStringComparator
 - [HBASE-11796] - Add client support for atomic checkAndMutate
 - [HBASE-11804] - Raise default heap size if unspecified
 - [HBASE-11890] - HBase REST Client is hard coded to http protocol
 - [HBASE-12126] - Region server coprocessor endpoint
 - [HBASE-12183] - FuzzyRowFilter doesn't support reverse scans
 - [HBASE-12197] - Move REST (create hbase-rest module)
 - Continuation of the cell-based read / write pipeline work for
performance boost
 - Various fixes to REST server
 - Some more documentation improvements
 - Numerous improvements in other areas and bug fixes.

The release has these changes in default behaviour:
 - default heap for region servers (and master) is changed from 1GB to
   the jdk's default. On most platforms, it will default to 1/4 of physical
   memory
 - mapred package and classes under there has been un-deprecated.
 - two new modules (jar files): hbase-annotations and hbase-rest
 - Slab cache has been removed (use bucket cache instead)
 - Some more client API cleanup.


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=12328551


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.1 is supported as well.
0.99.1
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.x 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.x releases drop 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.x releases drop 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 10/14/2014 11:59PM PDT.
This is a developer (beta) release, so we have a shorter vote time.
[] +1 Release the artifacts as 0.99.1
[] -1 DO NOT release the artifacts as 0.99.1, because...

Thanks for helping to get a stable release out!

References
----------
[1]
https://mail-archives.apache.org/mod_mbox/hbase-dev/201409.mbox/%3ccamuu0w9y_+afw6ww0ha_p8kbew35b3ncshbuqacfndzs8tc...@mail.gmail.com%3E

Enis

Reply via email to