You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2026/07/31 05:22:21 UTC
(hbase) annotated tag 2.5.16RC0 created (now 984426ba226)
This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a change to annotated tag 2.5.16RC0
in repository https://gitbox.apache.org/repos/asf/hbase.git
at 984426ba226 (tag)
tagging be71107d51a471d4c9b40ddd52f5e5b64ed6b6ea (commit)
replaces rel/2.5.15
by Andrew Purtell
on Thu Jul 30 22:21:53 2026 -0700
- Log -----------------------------------------------------------------
Via create-release
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEUPHou3xnqxS9/AohhZd1TdU2XM0FAmpsMPEACgkQhZd1TdU2
XM2RABAAsNHk0/iPD8XLq7ZCqZ7yJRZSMhD6DfSIq1zEtYvdll7kryOESR/1krW7
YZY85fHoXiUMujIhCC0mW3Ex6wfUTWoeMeu3f1oh8NLJmrATEgRi7ZHSwGr24rPr
jFP01NalrbnIhi2XzkKnlRL3DX3z0HQ9HQBwsZEnWHtM1ybtaKPxiPB3x//5kCLY
qJKVxZmlvNXsMXuwP7cKuntKCyEAehvPqRY2cpwGjLIURVc+579O+OgGvbOGD6Lv
OaxaGAvG/FDSDZ1tYIJrYlkySmI1HZtk2+5lgq3Id8Urfjp6K8NvAbD53xMiPFTR
qji7o2ZJBoMPI8wItEggW1Iv8C8hnTHOzR/wK3sRuA3535W2zw1UkRdWnxk85mf5
HzSW3k8Py1msdJZJAO3/NtkXYnHKd5emDzwcHCwgpwqsFYZOCnpoJjk3KvusrdJK
+kTpV7lcs+0NvLUqMbXsYpf7xgm+SqXgAVpGDLFadZGPT+aWpA0Om1xjJEZwiKBS
NK8a3LqA3pZcfl1/mrH1YBxNfC+FaQfS9Yc7HcLCePOAMNsFdpCJtjCT5ODrTsTk
gQFz6/oakpTqCTYb3JYse/uNAyXZtIDbeQyGvwZ9yAS4S28aqomR//P2irthI3yU
ZbfivMB4EVKslT+kYBtdBdqi12QUGfy/PJLmKfVYfljgoPOljKM=
=Onk9
-----END PGP SIGNATURE-----
-----------------------------------------------------------------------
This annotated tag includes the following new commits:
new be71107d51a Preparing hbase release 2.5.16RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
(hbase) 01/01: Preparing hbase release 2.5.16RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Posted by ap...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to annotated tag 2.5.16RC0
in repository https://gitbox.apache.org/repos/asf/hbase.git
commit be71107d51a471d4c9b40ddd52f5e5b64ed6b6ea
Author: Andrew Purtell <ap...@apache.org>
AuthorDate: Thu Jul 30 22:21:53 2026 -0700
Preparing hbase release 2.5.16RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <ap...@apache.org>
---
CHANGES.md | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
RELEASENOTES.md | 24 +++++++++++++++++
pom.xml | 2 +-
3 files changed, 106 insertions(+), 1 deletion(-)
diff --git a/CHANGES.md b/CHANGES.md
index 274a121fbda..af5e970f67e 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -18,6 +18,87 @@
-->
# HBASE Changelog
+## Release 2.5.16 - 2026-08-07
+
+
+
+### IMPROVEMENTS:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-30286](https://issues.apache.org/jira/browse/HBASE-30286) | HTTP ERROR 500 when opening master ui if active master is not yet available during startup | Minor | UI |
+| [HBASE-30283](https://issues.apache.org/jira/browse/HBASE-30283) | list\_labels shell command should return readable labels | Minor | shell |
+| [HBASE-30261](https://issues.apache.org/jira/browse/HBASE-30261) | Hide segmented CodeHeap memory pools on process info JSP pages for JDK 9+ | Minor | UI |
+| [HBASE-29733](https://issues.apache.org/jira/browse/HBASE-29733) | Use ServerName instead of hostname in unloadRegions log message | Minor | util |
+| [HBASE-30260](https://issues.apache.org/jira/browse/HBASE-30260) | Polish X509TestContext to make it more stable | Major | security, test |
+| [HBASE-30252](https://issues.apache.org/jira/browse/HBASE-30252) | \`hbase snapshot info\` display inaccurate snapshot TTL information messages | Major | snapshots |
+| [HBASE-30259](https://issues.apache.org/jira/browse/HBASE-30259) | Async WAL archiving causes TestMasterRegionWALCleaner flaky | Major | . |
+| [HBASE-30254](https://issues.apache.org/jira/browse/HBASE-30254) | Update GitHub Actions | Major | build |
+| [HBASE-30244](https://issues.apache.org/jira/browse/HBASE-30244) | Use static imports for JUnit 5 Assertions and Hamcrest MatcherAssert in tests | Trivial | test |
+| [HBASE-30239](https://issues.apache.org/jira/browse/HBASE-30239) | Use hamcrest instead of deprecated hamcrest-core and hamcrest-library | Major | test |
+| [HBASE-30243](https://issues.apache.org/jira/browse/HBASE-30243) | Split TestMajorCompaction | Major | test |
+| [HBASE-30177](https://issues.apache.org/jira/browse/HBASE-30177) | Make block caching configurable for MOB compaction reads | Major | mob, regionserver |
+| [HBASE-30227](https://issues.apache.org/jira/browse/HBASE-30227) | Disallow JUnit4 imports in source code | Minor | pom, test |
+| [HBASE-30217](https://issues.apache.org/jira/browse/HBASE-30217) | Remove dead code getRegionId and isTemporaryDirectoryName in HRegionFileSystem | Major | . |
+| [HBASE-30209](https://issues.apache.org/jira/browse/HBASE-30209) | MobFileCleanerChore is not registered for online configuration updates | Major | master, mob |
+| [HBASE-30214](https://issues.apache.org/jira/browse/HBASE-30214) | Add m2e.disableTestClasspathFlag=true to fix Eclipse test classpath for workspace projects | Minor | build |
+| [HBASE-30046](https://issues.apache.org/jira/browse/HBASE-30046) | Make minHFileSize and jitter configurable in DecreaseMaxHFileSizeAction | Major | integration tests |
+| [HBASE-29995](https://issues.apache.org/jira/browse/HBASE-29995) | Improve existing hash implementations by reading 4 bytes at once | Minor | regionserver |
+| [HBASE-30204](https://issues.apache.org/jira/browse/HBASE-30204) | Split TestClearRegionBlockCache by cache type to avoid per-method mini cluster restart | Major | regionserver, test |
+| [HBASE-28419](https://issues.apache.org/jira/browse/HBASE-28419) | Allow Action and Policies of ServerKillingMonkey to be configurable | Major | test |
+| [HBASE-30150](https://issues.apache.org/jira/browse/HBASE-30150) | Propagate filter hints through composite filters | Major | Filters, Scanners |
+| [HBASE-29974](https://issues.apache.org/jira/browse/HBASE-29974) | Filter seek hints underutilized due to early circuit breaks in scan pipeline, causing unnecessary cell-level iteration | Major | Filters, Scanners |
+
+
+### BUG FIXES:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-29696](https://issues.apache.org/jira/browse/HBASE-29696) | TableInputFormatBase with NUM\_MAPPERS\_PER\_REGION produces incorrect last InputSplit | Major | mapreduce |
+| [HBASE-30304](https://issues.apache.org/jira/browse/HBASE-30304) | Bytes.toBytesBinary throws StringIndexOutOfBoundsException on truncated \\x escape | Minor | . |
+| [HBASE-30248](https://issues.apache.org/jira/browse/HBASE-30248) | Negative hbase.snapshot.region.timeout causes RegionServer abort during snapshot procedure initialization | Major | regionserver |
+| [HBASE-30265](https://issues.apache.org/jira/browse/HBASE-30265) | Fix flaky TestProcDispatcher.testRetryLimitOnConnClosedErrors | Major | test |
+| [HBASE-30284](https://issues.apache.org/jira/browse/HBASE-30284) | FNFE when viewing MOB Files of a MOB table restored from snapshot in HBase UI | Major | UI |
+| [HBASE-30163](https://issues.apache.org/jira/browse/HBASE-30163) | IntegrationTestsDriver is broken after we upgrade hbase-it to junit5 | Major | integration tests, test |
+| [HBASE-30142](https://issues.apache.org/jira/browse/HBASE-30142) | Resolve NPE while running recoverUnknown command because null RegionLocation | Minor | hbck2, master |
+| [HBASE-30273](https://issues.apache.org/jira/browse/HBASE-30273) | Backport HBASE-26107 MOB compaction with missing files catches incorrect exception to branch-2.x | Major | mob |
+| [HBASE-30272](https://issues.apache.org/jira/browse/HBASE-30272) | Compatiblity checker can not compile rel/2.0.0 when releasing 3.0.0-beta-2 | Blocker | scripts |
+| [HBASE-30274](https://issues.apache.org/jira/browse/HBASE-30274) | Nexus-staging-maven-plugin can not work with java 17 | Blocker | build |
+| [HBASE-30256](https://issues.apache.org/jira/browse/HBASE-30256) | FuzzyRowFilter mishandles the fuzzy-mask encoding on the no-unsafe path | Major | Filters |
+| [HBASE-27380](https://issues.apache.org/jira/browse/HBASE-27380) | RitDuration histogram metric is broken | Minor | . |
+| [HBASE-24923](https://issues.apache.org/jira/browse/HBASE-24923) | Running InitMetaProcedures are missed if Hmaster startup happens after Meta assign | Major | . |
+| [HBASE-30246](https://issues.apache.org/jira/browse/HBASE-30246) | MOB compaction does not close MobCell after resolving reference cells | Major | Compaction, mob |
+| [HBASE-30169](https://issues.apache.org/jira/browse/HBASE-30169) | Split completed parent region added to RIT list on host RS and master crash | Minor | . |
+| [HBASE-30235](https://issues.apache.org/jira/browse/HBASE-30235) | Fix Javadoc syntax errors | Minor | . |
+| [HBASE-30226](https://issues.apache.org/jira/browse/HBASE-30226) | Reverse FuzzyRowFilter can stop making progress when the reverse seek hint is equal to the current row | Major | . |
+| [HBASE-30221](https://issues.apache.org/jira/browse/HBASE-30221) | FNFE may occur when executing \`hbase snapshot info --list-snapshots\` | Major | snapshots |
+| [HBASE-30223](https://issues.apache.org/jira/browse/HBASE-30223) | TestRegionMover2.testWithMergedRegions may merge disjoint regions and cause tests to fail | Major | test |
+| [HBASE-29909](https://issues.apache.org/jira/browse/HBASE-29909) | RegionMover ignores configuration properties passed via -D on the command line | Minor | . |
+| [HBASE-30058](https://issues.apache.org/jira/browse/HBASE-30058) | Snapshot operations create unnecessary short-lived connections causing excessive KDC requests in Kerberos environments | Major | security, snapshots |
+
+
+### SUB-TASKS:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-30267](https://issues.apache.org/jira/browse/HBASE-30267) | Backport HBASE-30266 Do not drop visibility delete markers as redundant during minor compaction to branch-2 | Major | . |
+| [HBASE-30241](https://issues.apache.org/jira/browse/HBASE-30241) | TestMobCloneSnapshotFromClientAfterSplittingRegion is flaky because a split may build whole-file HFileLinks instead of References | Major | regionserver, test |
+| [HBASE-30258](https://issues.apache.org/jira/browse/HBASE-30258) | Run getAllRegionLocations more times in TestMetaRegionReplicaReplication to make it more stable | Major | meta replicas, test |
+| [HBASE-30255](https://issues.apache.org/jira/browse/HBASE-30255) | Async archiving wal file causes TestLogRolling flaky | Major | test, wal |
+| [HBASE-30253](https://issues.apache.org/jira/browse/HBASE-30253) | Do not add/remove peer between tests in TestBulkLoadReplication | Major | Replication, test |
+| [HBASE-30159](https://issues.apache.org/jira/browse/HBASE-30159) | Make hash algorithm configurable for HashTable/SyncTable | Major | . |
+| [HBASE-30190](https://issues.apache.org/jira/browse/HBASE-30190) | Upgrade hbase-server to use junit5 Part21 | Major | Replication, test |
+
+
+### OTHER:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-30264](https://issues.apache.org/jira/browse/HBASE-30264) | Validate bulkToken path in SecureBulkLoadManager.cleanupBulkLoad | Major | regionserver |
+| [HBASE-30195](https://issues.apache.org/jira/browse/HBASE-30195) | Update Thrift gateway to use new hbase-shaded-thrift in thirdparty | Major | . |
+| [HBASE-30200](https://issues.apache.org/jira/browse/HBASE-30200) | Cleanup all junit4 references in hbase code base | Major | test |
+
+
## Release 2.5.15 - 2026-06-08
diff --git a/RELEASENOTES.md b/RELEASENOTES.md
index 94603d2acd7..6f161756099 100644
--- a/RELEASENOTES.md
+++ b/RELEASENOTES.md
@@ -16,6 +16,30 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-->
+# HBASE 2.5.16 Release Notes
+
+These release notes cover new developer and user-facing incompatibilities, important issues, features, and major improvements.
+
+
+---
+
+* [HBASE-30195](https://issues.apache.org/jira/browse/HBASE-30195) | *Major* | **Update Thrift gateway to use new hbase-shaded-thrift in thirdparty**
+
+The HBase Thrift gateway no longer depends on upstream libthrift. The Thrift runtime is now provided by org.apache.hbase.thirdparty:hbase-shaded-thrift, shipped in hbase-thirdparty 4.1.14 or later. Decoupling from upstream libthrift lets HBase stay current with Thrift CVE fixes on its own cadence and preserves 2.5.x/2.6.x Java 8 compatibility regardless of upstream libthrift's evolving requirements. As part of this change the Thrift runtime is upgraded from 0.14.1 to 0.23.0. Generated Ja [...]
+
+Wire compatibility is preserved. The Thrift IDL, RPC wire format, server endpoints, configuration keys, and CLI behavior of the HBase Thrift 1 and Thrift 2 servers are unchanged. Existing external Thrift clients in any language continue to interoperate with the HBase Thrift gateway with no changes required.
+
+
+---
+
+* [HBASE-30200](https://issues.apache.org/jira/browse/HBASE-30200) | *Major* | **Cleanup all junit4 references in hbase code base**
+
+Cleanup all the junit4 reference in HBase code base and ban junit4 dependencies and imports.
+
+Hadoop mini cluster related code still references junit4 Assert, so we add a org.junit.Assert class in hbase-common which delegates all calls to junit5 Assertions. You should never use this class in HBase code.
+
+
+
# HBASE 2.5.15 Release Notes
These release notes cover new developer and user-facing incompatibilities, important issues, features, and major improvements.
diff --git a/pom.xml b/pom.xml
index fccac82579f..e671992bcd7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -521,7 +521,7 @@
</site>
</distributionManagement>
<properties>
- <revision>2.5.16-SNAPSHOT</revision>
+ <revision>2.5.16</revision>
<!-- override on command line to have generated LICENSE files include
diagnostic info for verifying notice requirements -->
<license.debug.print.included>false</license.debug.print.included>