Skip to content

Commit 51ed95c

Browse files
authored
HBASE-26071: Document HBASE-26021 and upgrade considerations for 1.7.0/1.7.1 (#3469)
Signed-off-by: Viraj Jasani <vjasani@apache.org> Signed-off-by: Reid Chan <reidchan@apache.org>
1 parent d15f3cb commit 51ed95c

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

src/main/asciidoc/_chapters/upgrading.adoc

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,13 @@ Previously, we tried to maintain dependency compatibility for the underly Hadoop
128128
|Operational Compatibility | N |N |Y
129129
|===
130130

131+
[IMPORTANT]
132+
======
133+
HBase 1.7.0 release violated client-server wire compatibility guarantees and was subsequently
134+
withdrawn after the incompatibilities were reported and fixed in 1.7.1. If you are considering an
135+
upgrade to 1.7.x line, see <<upgrade1.7.x>>.
136+
======
137+
131138
[[hbase.client.api.surface]]
132139
==== HBase API Surface
133140

@@ -799,6 +806,21 @@ To upgrade an existing HBase 1.x cluster, you should:
799806
* Upgrade RegionServers
800807
* (Eventually) Upgrade Clients
801808

809+
[[upgrade1.7.x]]
810+
=== Upgrading to 1.7.1+
811+
HBase release 1.7.0 introduced an incompatible table metadata serialization format that broke the
812+
minor release compatibility guarantees. The issue was reported in https://issues.apache.org/jira/browse/HBASE-26021[HBASE-26021] and the problematic serialization patch was reverted in
813+
HBase 1.7.1. Some important notes about 1.7.x upgrades below.
814+
815+
* If you are considering an upgrade to 1.7.x version, skip 1.7.0 completely and upgrade to 1.7.1+
816+
version. 1.7.0 was withdrawn and removed from the Apache sites.
817+
* If you already installed a 1.7.0 cluster from scratch and are looking to migrate to 1.7.1+, you
818+
cannot follow the regular rolling upgrade procedures due to broken compatibility contracts.
819+
Instead shutdown the cluster and reboot with 1.7.1+ binaries. Newer versions detect any existing
820+
tables with incompatible serialization and rewrite them using the correct format at bootstrap.
821+
* If you are already on 1.7.1+ version, everything is good and no additional steps need to be
822+
performed.
823+
802824
[[upgrade1.4]]
803825
=== Upgrading from pre-1.4 to 1.4+
804826

0 commit comments

Comments
 (0)