I've finished a rolling upgrade test from 2.6.6 to 3.0.0RC0.

I set up two 2.6.6 clusters, set up a peer on each cluster to
replicate all tables to the other cluster.
Both clusters have 2 masters and 5 regionservers, and share the same
zookeeper and hdfs cluster.
I created two tables, ltt and ltt2, which have 150 and 100 regions.
I used LoadTestTool on cluster A to write 100M rows to the ltt table,
and also used LoadTestTool on cluster B to write 100M rows to the ltt2
table.

During the loading, I rolling upgraded the two clusters, first cluster
A, and then cluster B.
I used the standard rolling upgrade process, first upgrading backup
master, then active master, and then upgrade regionservers one by one,
unloading and then loading all the regions on the upgraded region
servers.

Both upgrade finished successfully, and after the two LTT write
finished, I used LTT read to read both ltt and ltt2 table on both
clusters, all finished without errors.
I also used shell to count ltt and ltt2 tables on both clusters, all 4
tables have 100M rows.

Dávid Paksy <[email protected]> 于2026年7月22日周三 20:36写道:

>
> +1 (non-binding)
> I checked:
>
> * Signature: ok
> * Checksum : ok
> * LICENSE and NOTICE: In place
> * Rat check (17.0.19): ok
>  - mvn clean apache-rat:check -D skipTests
> * Built from source (17.0.19): ok
>  - mvn clean install -D skipTests -DskipTests
>
> Started a standalone cluster - OK
> Checked logs and web UI pages, looks good.
>
> Run these shell commands - OK
>
> create_namespace 'nj'
> create 'nj:test', 'cf', {NUMREGIONS => 3, SPLITALGO => 'HexStringSplit'}
> describe 'nj:test'
> put 'nj:test', 'r1', 'cf:1', 'v1'
> put 'nj:test', '1', 'cf:1', 'v1'
> put 'nj:test', 'z00', 'cf:1', 'v3'
> scan 'nj:test'
> get 'nj:test', 'r1'
> flush 'nj:test'
> major_compact 'nj:test'
> get_splits 'nj:test'
> split 'nj:test', '0'
> get_splits 'nj:test'
>
> Executed LoadTestTool - OK
> bin/hbase ltt -num_keys 10000 -write 100:100 -num_tables 10 -multiput
>
>
> Xiao Liu <[email protected]> ezt írta (időpont: 2026. júl. 21., K,
> 10:43):
>
> > +1 (non-binding)
> > I checked:
> >
> > * Signature: OK
> > * Checksum: OK
> > * LICENSE and NOTICE: In place
> > * Rat check (17.0.12): OK
> >   - mvn clean apache-rat:check
> > * Build from source (17.0.12): OK
> >   - mvn clean install -DskipTests
> >
> >
> > Start a mini cluster in standalone mode, succeeded.
> > Check logs and web pages, it looks good.
> >
> > Run these shell commands, looks fine.
> > create 'test', 'cf'
> > list 'test'
> > describe 'test'
> > put 'test', 'row1', 'cf:a', 'value1'
> > put 'test', 'row2', 'cf:b', 'value2'
> > put 'test', 'row3', 'cf:c', 'value3'
> > scan 'test'
> > get 'test', 'row1'
> > flush 'test'
> > major_compact 'test'
> > scan 'test'
> > disable 'test'
> > enable 'test'
> > disable 'test'
> > drop 'test'
> >
> >
> > Run LTT to load 10000 rows, Passed
> > ./bin/hbase ltt -write 20:1024 -num_keys 10000
> >
> > Run these shell commands, looks fine
> > flush 'cluster_test'
> > major_compact 'cluster_test'
> > scan 'cluster_test', {LIMIT=>10}
> > count 'cluster_test'
> >
> >
> >
> > On 2026/07/20 15:20:45 Duo Zhang wrote:
> > > I've passed a 10B ITBLL run on this RC.
> > >
> > > I will do some upgrading tests too.
> > >
> > > Duo Zhang <[email protected]> 于2026年7月18日周六 17:00写道:
> > > >
> > > > Please vote on this Apache hbase release candidate,
> > > > hbase-3.0.0RC0
> > > >
> > > > The VOTE will remain open for at least 72 hours.
> > > >
> > > > [ ] +1 Release this package as Apache hbase 3.0.0
> > > > [ ] -1 Do not release this package because ...
> > > >
> > > > The tag to be voted on is 3.0.0RC0:
> > > >
> > > >   https://github.com/apache/hbase/tree/3.0.0RC0
> > > >
> > > > This tag currently points to git reference
> > > >
> > > >   da418afa6973bf4222231c1d233410d8c18ac7ec
> > > >
> > > > The release files, including signatures, digests, as well as CHANGES.md
> > > > and RELEASENOTES.md included in this RC can be found at:
> > > >
> > > >   https://dist.apache.org/repos/dist/dev/hbase/3.0.0RC0/
> > > >
> > > > Maven artifacts are available in a staging repository at:
> > > >
> > > >
> > https://repository.apache.org/content/repositories/orgapachehbase-1620/
> > > >
> > > > Artifacts were signed with the 0x9AD2AE49 key which can be found in:
> > > >
> > > >   https://downloads.apache.org/hbase/KEYS
> > > >
> > > > 3.0.0 is the first release for our 3.x major release line, which
> > includes the
> > > > following big feature/changes:
> > > >   Drop JDK8/JDK11 support, now the minimum JDK version is 17
> > > >   Drop hadoop 2.x support
> > > >   Synchronous Replication
> > > >   OpenTelemetry Tracing
> > > >   Distributed MOB Compaction
> > > >   Backup and Restore
> > > >   Move RSGroup balancer to core
> > > >   Reimplement sync client on async client
> > > >   CPEPs on shaded protobuf
> > > >   Move the logging framework from log4j to log4j2
> > > >   Decouple region replication and general replication framework, and
> > > >   also make region replication can work when SKIP_WAL is used
> > > >   A new file system based replication peer storage
> > > >   Used hbase table instead of zookeeper for tracking hbase replication
> > queue
> > > >   Yield SCP and TRSP to improve MTTR when restarting large cluster
> > > >   Upgrade to junit5
> > > >
> > > > To reduce the artifacts size, now we will not include tests related
> > jars in
> > > > our tarball. If you want to run hbase-it by yourself, you need to
> > build with
> > > > assemblyForTesting profile by your own. See HBASE-29192 for more
> > details.
> > > >
> > > > And this time we will not include CHANGES.md and RELEASENOTE.md
> > > > in our source code, you can find it on the download site. For getting
> > these
> > > > two files for old releases, please go to
> > > >
> > > >   https://archive.apache.org/dist/hbase/
> > > >
> > > > To learn more about Apache hbase, please see
> > > >
> > > >   http://hbase.apache.org/
> > > >
> > > > Thanks,
> > > > Your HBase Release Manager
> > >
> >

Reply via email to