The HBase Team is pleased to announce the immediate release of HBase
1.0.2.

Download it from your favorite Apache mirror [1] or maven repository.

HBase 1.0.2 is the next “patch” release in the 1.0.x release line and
supersedes all previous 1.0.x releases . According to the HBase’s semantic
version guide (See [2]), the release candidate is source and binary
compatible with 1.0.0 for client applications and server side libraries
(coprocessors, filters, etc).

1.0.2 release contains 163 fixes on top of 1.0.1 release. Most of
the changes are
bug fixes or test fixes except for the following:

** Improvement
    * [HBASE-12415] - Add add(byte[][] arrays) to Bytes.
    * [HBASE-12957] - region_mover#isSuccessfulScan may be extremely slow
on region with lots of expired data
    * [HBASE-13247] - Change BufferedMutatorExample to use addColumn()
since add() is deprecated
    * [HBASE-13344] - Add enforcer rule that matches our JDK support
statement
    * [HBASE-13366] - Throw DoNotRetryIOException instead of read only
IOException
    * [HBASE-13420] - RegionEnvironment.offerExecutionLatency Blocks
Threads under Heavy Load
    * [HBASE-13431] - Allow to skip store file range check based on column
family while creating reference files in HRegionFileSystem#splitStoreFile
    * [HBASE-13550] - [Shell] Support unset of a list of table attributes
    * [HBASE-13761] - Optimize FuzzyRowFilter
    * [HBASE-13780] - Default to 700 for HDFS root dir permissions for
secure deployments
    * [HBASE-13828] - Add group permissions testing coverage to AC.
    * [HBASE-13925] - Use zookeeper multi to clear znodes in ZKProcedureUtil

** New Feature
    * [HBASE-13057] - Provide client utility to easily enable and disable
table replication

** Task
    * [HBASE-11276] - Add back support for running ChaosMonkey as
standalone tool
    * [HBASE-13764] - Backport HBASE-7782
(HBaseTestingUtility.truncateTable() not acting like CLI) to branch-1.x
    * [HBASE-13799] - javadoc how Scan gets polluted when used; if you set
attributes or ask for scan metrics
    * [HBASE-14085] - Correct LICENSE and NOTICE files in artifacts

** Sub-task
    * [HBASE-7847] - Use zookeeper multi to clear znodes
    * [HBASE-13035] - [0.98] Backport HBASE-12867 - Shell does not support
custom replication endpoint specification
    * [HBASE-13201] - Remove HTablePool from thrift-server
    * [HBASE-13496] - Make
Bytes$LexicographicalComparerHolder$UnsafeComparer::compareTo inlineable
    * [HBASE-13497] - Remove MVCC stamps from HFile when that is safe
    * [HBASE-13563] - Add missing table owner to AC tests.
    * [HBASE-13579] - Avoid isCellTTLExpired() for NO-TAG cases
    * [HBASE-13937] - Partially revert HBASE-13172·
    * [HBASE-13983] - Doc how the oddball HTable methods getStartKey,
getEndKey, etc. will be removed in 2.0.0
    * [HBASE-14003] - work around jdk8 spec bug in WALPerfEval
    * [HBASE-14086] - remove unused bundled dependencies


Full list of the issues can be found at
https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12329865&styleName=Html&projectId=12310753&Create=Create


Compatibility
-------------
This release (1.0.2) is source, wire and binary compatible with all
previous 1.0.x releases. Client applications do not have to be recompiled
with the new version (unless new API is used) if upgrading from a previous
1.0.x. It is a drop-in replacement.

See release notes for 1.0.0 [2] for compatibility with earlier
versions (0.94, 0.96, 0.98). Compatibility of 1.0.2 with earlier versions
is the same as in 1.0.0.

Source Compatibility:
Client side code in HBase-1.0.x is (mostly) source compatible with 0.98.x
versions. Some minor API changes might be needed from the client side.

Wire Compatibility:
HBase-1.0.x release is wire compatible with 0.98.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 1.0.x is
supported as well.
Rolling upgrade from 0.96 directly to 1.0.x is not supported. 1.0.x is NOT
wire compatible with earlier releases (0.94, etc).

Binary Compatibility:
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.


Upgrading
---------
This release is rolling upgradable from earlier 1.0.x releases.

See [2] and [3] for upgrade instructions from earlier versions. Upgrading
to 1.0.2 is similar to upgrading to 1.0.0 as documented in [3].

>From 0.98.x : Upgrade from 0.98.x in regular upgrade or rolling upgrade
fashion is supported.

>From 0.96.x : Upgrade from 0.96.x is supported with a shutdown and restart
of the cluster.

>From 0.94.x : Upgrade from 0.94.x is supported similar to upgrade from 0.94
-> 0.96. The upgrade script should be run to rewrite cluster level
metadata. See [3] for details.


Supported Hadoop versions
-------------------------
1.0.x releases support only Hadoop-2.x. Hadoop-2.4.x, Hadoop-2.5.x
and Hadoop-2.6.x releases are the most tested hadoop releases and we
recommend running with those versions (or later 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 at [4].


Supported Java versions
-------------------------
1.0.x releases only support JDK7. JDK8 support is experimental. More
information can be found at [5].

References
----------
[1] https://hbase.apache.org/book/upgrading.html#hbase.versioning
[2] http://s.apache.org/hbase-1.0.0-release-notes
[3] https://hbase.apache.org/book/upgrade1.0.html#upgrade1.0.changes
[4] https://hbase.apache.org/book/configuration.html#hadoop
[5] https://hbase.apache.org/book/configuration.html#java

Thanks all who worked on this release!

Reply via email to