Added: dev/hbase/2.6.3RC0/CHANGES.md ============================================================================== --- dev/hbase/2.6.3RC0/CHANGES.md (added) +++ dev/hbase/2.6.3RC0/CHANGES.md Sat Jun 21 16:06:13 2025 @@ -0,0 +1,8121 @@ + +<!--- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +--> +# HBASE Changelog + +## Release 2.6.3 - Unreleased (as of 2025-06-21) + + + +### NEW FEATURES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-29131](https://issues.apache.org/jira/browse/HBASE-29131) | Introduce the option for post-compaction validation of HFiles | Major | Compaction | +| [HBASE-28368](https://issues.apache.org/jira/browse/HBASE-28368) | Backport "HBASE-27693 Support for Hadoop's LDAP Authentication mechanism (Web UI only)" to branch-2 | Major | security, UI | +| [HBASE-29244](https://issues.apache.org/jira/browse/HBASE-29244) | Support admin users acl setting with LDAP (Web UI only) | Major | security, UI | + + +### IMPROVEMENTS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-29097](https://issues.apache.org/jira/browse/HBASE-29097) | Add error logging when put creation fails | Major | . | +| [HBASE-29123](https://issues.apache.org/jira/browse/HBASE-29123) | A faster CodecPool for HBase | Minor | HFile, io | +| [HBASE-28836](https://issues.apache.org/jira/browse/HBASE-28836) | Parallelize the archival of compacted files | Major | regionserver | +| [HBASE-28410](https://issues.apache.org/jira/browse/HBASE-28410) | Upgrade curator to 5.7.1 | Minor | Zookeeper | +| [HBASE-29107](https://issues.apache.org/jira/browse/HBASE-29107) | shell: Improve 'count' performance | Major | shell | +| [HBASE-29135](https://issues.apache.org/jira/browse/HBASE-29135) | ZStandard decompression can operate directly on ByteBuffs | Minor | . | +| [HBASE-29160](https://issues.apache.org/jira/browse/HBASE-29160) | Cache result of getRegionNameAsString() | Minor | . | +| [HBASE-29148](https://issues.apache.org/jira/browse/HBASE-29148) | BufferedMutator should be able to flush after buffering a certain number of mutations | Minor | Client | +| [HBASE-28388](https://issues.apache.org/jira/browse/HBASE-28388) | Avoid index based field sorting in tablesorter | Major | UI | +| [HBASE-29178](https://issues.apache.org/jira/browse/HBASE-29178) | Some ZKUtil optimizations | Major | Zookeeper | +| [HBASE-29162](https://issues.apache.org/jira/browse/HBASE-29162) | Fix Maven build warnings | Minor | build | +| [HBASE-29201](https://issues.apache.org/jira/browse/HBASE-29201) | Add OWASP Dependency Check to check 3rd party dependencies for known vulnerabilities | Major | build | +| [HBASE-28832](https://issues.apache.org/jira/browse/HBASE-28832) | Upgrade from bootstrap 3.4.1 to non vulnerable version 5.3.3 | Major | security, UI | +| [HBASE-29103](https://issues.apache.org/jira/browse/HBASE-29103) | Avoid excessive allocations during reverse scanning when seeking to next row | Major | Performance | +| [HBASE-28754](https://issues.apache.org/jira/browse/HBASE-28754) | Verify the first argument passed to compaction\_switch | Major | shell | +| [HBASE-29168](https://issues.apache.org/jira/browse/HBASE-29168) | Add configurable throttling of region moves in CacheAwareLoadBalancer. | Major | . | +| [HBASE-29134](https://issues.apache.org/jira/browse/HBASE-29134) | Optimize bulkload backup process for incremental backups | Major | . | +| [HBASE-29191](https://issues.apache.org/jira/browse/HBASE-29191) | Use MetaRpcReadTimeout when accessing Meta replicas | Trivial | . | +| [HBASE-29112](https://issues.apache.org/jira/browse/HBASE-29112) | Apply KeyOnlyFilter to RowCounter | Minor | mapreduce | +| [HBASE-29258](https://issues.apache.org/jira/browse/HBASE-29258) | Change log level for 'Got brand-new ByteBuffDecompressor' in CodecPool to DEBUG instead of INFO | Major | regionserver | +| [HBASE-29238](https://issues.apache.org/jira/browse/HBASE-29238) | ExportSnapshot support specify storage policy | Minor | snapshots | +| [HBASE-29253](https://issues.apache.org/jira/browse/HBASE-29253) | Avoid allocating a new closure on every row processed by StoreScanner | Minor | Scanners | +| [HBASE-29193](https://issues.apache.org/jira/browse/HBASE-29193) | Allow ZstdByteBuffDecompressor to take direct ByteBuffer as input and heap ByteBuffer as output, or vice versa | Minor | . | +| [HBASE-29090](https://issues.apache.org/jira/browse/HBASE-29090) | Add server-side load metrics to client results | Major | Client, metrics | +| [HBASE-29218](https://issues.apache.org/jira/browse/HBASE-29218) | Reduce calls to Configuration#get() in decompression path | Minor | . | +| [HBASE-29252](https://issues.apache.org/jira/browse/HBASE-29252) | Reduce allocations in RowIndexSeekerV1 | Minor | . | +| [HBASE-29249](https://issues.apache.org/jira/browse/HBASE-29249) | Allow for BlockCache implementations to define dynamic properties | Major | . | +| [HBASE-29276](https://issues.apache.org/jira/browse/HBASE-29276) | Compute and display hit ratio by configurable, granular time periods | Major | . | +| [HBASE-29284](https://issues.apache.org/jira/browse/HBASE-29284) | Add Region name to OutOfOrderScannerNextException message | Minor | . | +| [HBASE-29314](https://issues.apache.org/jira/browse/HBASE-29314) | TableDescriptorChecker should verify CF configuration set via setConfiguration | Major | . | +| [HBASE-29307](https://issues.apache.org/jira/browse/HBASE-29307) | Add status command to hbase-daemon.sh for process state checking | Major | scripts | +| [HBASE-29323](https://issues.apache.org/jira/browse/HBASE-29323) | Use Priority Handler for all RegionServerStatus rpc at Master | Major | master | +| [HBASE-29229](https://issues.apache.org/jira/browse/HBASE-29229) | Throttles should support specific restrictions for atomic workloads | Major | Quotas | +| [HBASE-29222](https://issues.apache.org/jira/browse/HBASE-29222) | Avoid expensive tracing calls if tracing is disabled | Major | tracing | +| [HBASE-27802](https://issues.apache.org/jira/browse/HBASE-27802) | Manage static javascript resources programatically | Major | UI | +| [HBASE-29273](https://issues.apache.org/jira/browse/HBASE-29273) | Remove deprecated boxed primitive constructors in some test classes | Minor | test | +| [HBASE-29231](https://issues.apache.org/jira/browse/HBASE-29231) | Throttles should support limits based on handler thread usage time | Major | . | +| [HBASE-29392](https://issues.apache.org/jira/browse/HBASE-29392) | Bump requests from 2.32.0 to 2.32.4 in /dev-support/flaky-tests | Major | dependabot, scripts, security | +| [HBASE-29029](https://issues.apache.org/jira/browse/HBASE-29029) | Refactor BackupHFileCleaner + fix test | Minor | backup&restore | +| [HBASE-29279](https://issues.apache.org/jira/browse/HBASE-29279) | Allow throttling alter operation via table configuration | Major | . | +| [HBASE-29390](https://issues.apache.org/jira/browse/HBASE-29390) | Too many logs in AsyncBatchRpcRetryingCaller when hitting RegionTooBusyException | Major | asyncclient, Client | + + +### BUG FIXES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28627](https://issues.apache.org/jira/browse/HBASE-28627) | REST ScannerModel doesn't support includeStartRow/includeStopRow | Major | REST | +| [HBASE-29038](https://issues.apache.org/jira/browse/HBASE-29038) | NPE in processRS.jsp due to failure to get value from MBean | Minor | regionserver | +| [HBASE-29066](https://issues.apache.org/jira/browse/HBASE-29066) | Fix NPE in rits.jsp when regions are not open | Minor | UI | +| [HBASE-29157](https://issues.apache.org/jira/browse/HBASE-29157) | Sorting not working in the Table Regions section | Major | UI | +| [HBASE-29174](https://issues.apache.org/jira/browse/HBASE-29174) | NPE on MemstoreFlusher when flush is triggered by too many wals after a wal rolling | Major | . | +| [HBASE-25839](https://issues.apache.org/jira/browse/HBASE-25839) | Bulk Import fails with java.io.IOException: Type mismatch in value from map | Major | mapreduce | +| [HBASE-29172](https://issues.apache.org/jira/browse/HBASE-29172) | Fix bug in ZstdByteBuffDecompressor | Major | . | +| [HBASE-29189](https://issues.apache.org/jira/browse/HBASE-29189) | NPE in RawAsyncTableAdmin.isTableDisabled | Major | Admin, Client | +| [HBASE-28984](https://issues.apache.org/jira/browse/HBASE-28984) | Alter table causes AccessDeniedException at the client side | Major | . | +| [HBASE-29183](https://issues.apache.org/jira/browse/HBASE-29183) | Fix flakeyness on TestVerifyBucketCacheFile | Major | . | +| [HBASE-29187](https://issues.apache.org/jira/browse/HBASE-29187) | Use double quote instead of single quote in Jenkinsfile scripts when there are env vars | Major | jenkins, scripts | +| [HBASE-29080](https://issues.apache.org/jira/browse/HBASE-29080) | Validate Negotiated SASL QoP Against Requested | Major | rpc, sasl | +| [HBASE-29158](https://issues.apache.org/jira/browse/HBASE-29158) | Unknown checksum type code exception occurred while reading HFileBlock | Major | HFile | +| [HBASE-29057](https://issues.apache.org/jira/browse/HBASE-29057) | Backport missing changes in HBASE-28023 to branch-2 | Major | integration tests | +| [HBASE-29200](https://issues.apache.org/jira/browse/HBASE-29200) | Bump netty4 to 4.1.119.Final in main repo | Major | dependencies | +| [HBASE-28983](https://issues.apache.org/jira/browse/HBASE-28983) | Static resources are not loaded on REST web UI pages in dev mode | Major | REST, UI | +| [HBASE-29214](https://issues.apache.org/jira/browse/HBASE-29214) | Typo in AsyncMasterRequestRpcRetryingCaller which makes us fail to clear the master stub cache | Major | Admin, asyncclient, Client | +| [HBASE-29215](https://issues.apache.org/jira/browse/HBASE-29215) | View block cache as JSON failing for BucketCache implementation | Major | BlockCache, regionserver, UI | +| [HBASE-29234](https://issues.apache.org/jira/browse/HBASE-29234) | Handle java.lang.reflect.InaccessibleObjectException in HFileSystem | Major | . | +| [HBASE-28997](https://issues.apache.org/jira/browse/HBASE-28997) | Table Regions Total Locality value on the UI shows 1.0 even though some of the regions locality value is zero | Major | UI | +| [HBASE-28569](https://issues.apache.org/jira/browse/HBASE-28569) | Race condition during WAL splitting leading to corrupt recovered.edits | Major | regionserver | +| [HBASE-29239](https://issues.apache.org/jira/browse/HBASE-29239) | Subsequent runs of re-splitting HFiles can fail because we don't cleanup the MR directory | Major | backup&restore | +| [HBASE-29246](https://issues.apache.org/jira/browse/HBASE-29246) | Update commons-lang3 to 3.17.0 | Major | . | +| [HBASE-29243](https://issues.apache.org/jira/browse/HBASE-29243) | Fix BucketCache.notifyFileCachingComplete to also account for ENCODED\_DATA block type | Major | . | +| [HBASE-29195](https://issues.apache.org/jira/browse/HBASE-29195) | Get Column value with timestamp is giving wrong result as not found | Major | REST | +| [HBASE-29156](https://issues.apache.org/jira/browse/HBASE-29156) | Sort options missing in the Table Regions section on server deployments with security mods | Major | UI | +| [HBASE-29248](https://issues.apache.org/jira/browse/HBASE-29248) | HBASE-28529 made an incompatible change to hbase.zookeeper.property handling | Major | Zookeeper | +| [HBASE-29259](https://issues.apache.org/jira/browse/HBASE-29259) | Master crash when loading procedures | Critical | proc-v2, Region Assignment | +| [HBASE-29251](https://issues.apache.org/jira/browse/HBASE-29251) | Procedure gets stuck if the procedure state cannot be persisted | Critical | . | +| [HBASE-25338](https://issues.apache.org/jira/browse/HBASE-25338) | Client app getting "Failed to load SIMPLE, KERBEROS, and DIGEST authentication providers. Classpath is not sane." errors | Major | Client | +| [HBASE-29207](https://issues.apache.org/jira/browse/HBASE-29207) | The backup system table should be considered a system table | Major | backup&restore | +| [HBASE-29204](https://issues.apache.org/jira/browse/HBASE-29204) | BufferedMutatorParams#clone() should copy the requestAttributes field | Minor | . | +| [HBASE-29003](https://issues.apache.org/jira/browse/HBASE-29003) | Proper bulk load tracking | Critical | backup&restore | +| [HBASE-29281](https://issues.apache.org/jira/browse/HBASE-29281) | Atomic request throttles are missing QuotaSettingsFactory support | Major | . | +| [HBASE-29254](https://issues.apache.org/jira/browse/HBASE-29254) | StoreScanner returns incorrect row after flush due to topChanged behavior | Major | Scanners | +| [HBASE-29282](https://issues.apache.org/jira/browse/HBASE-29282) | Regions are left in CLOSED state after merging | Critical | proc-v2, Region Assignment | +| [HBASE-29271](https://issues.apache.org/jira/browse/HBASE-29271) | TestIncrementalBackupWithBulkLoad is flaky | Major | . | +| [HBASE-29294](https://issues.apache.org/jira/browse/HBASE-29294) | Master crashed because of failing to update master region | Major | master | +| [HBASE-29313](https://issues.apache.org/jira/browse/HBASE-29313) | RecoverableZooKeeper.getZooKeeper() returns null for new object | Minor | Zookeeper | +| [HBASE-29181](https://issues.apache.org/jira/browse/HBASE-29181) | TestNettyTLSIPCFileWatcher.testReplaceServerKeystore fails for some storeFileTypes | Major | . | +| [HBASE-29280](https://issues.apache.org/jira/browse/HBASE-29280) | Bug in RawAsyncTableImpl#coprocessorServiceUntilComplete retry logic | Minor | . | +| [HBASE-29331](https://issues.apache.org/jira/browse/HBASE-29331) | TestDefaultQuota fails because of pseudo-race condition | Major | Quotas | +| [HBASE-29301](https://issues.apache.org/jira/browse/HBASE-29301) | Fix AggregrateImplementation pagination logic | Major | . | +| [HBASE-29300](https://issues.apache.org/jira/browse/HBASE-29300) | Upgrade Tomcat to 9.0.104 | Major | . | +| [HBASE-29093](https://issues.apache.org/jira/browse/HBASE-29093) | Load userSnapshots.jsp only on master status page | Minor | UI | +| [HBASE-29326](https://issues.apache.org/jira/browse/HBASE-29326) | Do not prevent prefetch from running if the given file has already been fully cached before | Major | . | +| [HBASE-29345](https://issues.apache.org/jira/browse/HBASE-29345) | testWALClosureFailureAndCleanup fails due to missing lease recovery wait during close | Major | wal | +| [HBASE-29315](https://issues.apache.org/jira/browse/HBASE-29315) | Cancel Split/MergeTableRegionProcedure if table modification is in progress | Minor | proc-v2 | +| [HBASE-29357](https://issues.apache.org/jira/browse/HBASE-29357) | PerformanceEvaluation: Read tests should not drop existing table | Major | PE | +| [HBASE-29283](https://issues.apache.org/jira/browse/HBASE-29283) | Replication MetricsSource.sizeOfHFileRefsQueue metrics not updated correctly after remove\_peer | Major | . | +| [HBASE-29365](https://issues.apache.org/jira/browse/HBASE-29365) | Improve option parser of PerformanceEvaluation | Major | PE | +| [HBASE-29363](https://issues.apache.org/jira/browse/HBASE-29363) | CompactSplit attempts to split non-default regions | Minor | . | +| [HBASE-29361](https://issues.apache.org/jira/browse/HBASE-29361) | Snapshot coprocessor hooks called inside SnapshotProcedure | Minor | Coprocessors, snapshots | +| [HBASE-29369](https://issues.apache.org/jira/browse/HBASE-29369) | Fix TestZKPermissionWatcher | Major | security, test | +| [HBASE-29362](https://issues.apache.org/jira/browse/HBASE-29362) | Fix Incorrect JSON Format in RegionServer Web Console Block Cache Status | Trivial | . | +| [HBASE-29380](https://issues.apache.org/jira/browse/HBASE-29380) | Two concurrent remove peer requests may hang | Blocker | proc-v2, Replication | +| [HBASE-29384](https://issues.apache.org/jira/browse/HBASE-29384) | Async Profiler occasionally fails to capture profiling data | Major | master, regionserver | +| [HBASE-29377](https://issues.apache.org/jira/browse/HBASE-29377) | ChaosService: Doesn't Support ZK Quorum Strings with Specified Ports | Minor | integration tests | +| [HBASE-29245](https://issues.apache.org/jira/browse/HBASE-29245) | Region reopening batch size not increased when backoff is zero | Minor | . | +| [HBASE-29388](https://issues.apache.org/jira/browse/HBASE-29388) | mvn spotless:apply changes line endings (CRLF to LF) on Windows | Major | . | +| [HBASE-29385](https://issues.apache.org/jira/browse/HBASE-29385) | Very slow performance when using AsyncAggregationClient for large scans | Major | . | +| [HBASE-29346](https://issues.apache.org/jira/browse/HBASE-29346) | Multiple Snapshot restores on same restoreDir ends up in Dataloss | Critical | snapshots | +| [HBASE-29146](https://issues.apache.org/jira/browse/HBASE-29146) | Incremental backups can fail due to not cleaning up the MR bulkload output directory | Major | backup&restore | + + +### SUB-TASKS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-29180](https://issues.apache.org/jira/browse/HBASE-29180) | Apply fail-fast retry limit for UnknownHostException | Major | . | +| [HBASE-29137](https://issues.apache.org/jira/browse/HBASE-29137) | Add config type validation | Major | conf | +| [HBASE-29344](https://issues.apache.org/jira/browse/HBASE-29344) | Update spotless to 2.44.4 | Major | build | +| [HBASE-29319](https://issues.apache.org/jira/browse/HBASE-29319) | Apply fail-fast retry limit for ConnectException | Major | . | + + +### OTHER: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-29026](https://issues.apache.org/jira/browse/HBASE-29026) | Replace some deprecated calls | Major | UI | +| [HBASE-29163](https://issues.apache.org/jira/browse/HBASE-29163) | Fix Github PR builds are broken | Major | build | +| [HBASE-29167](https://issues.apache.org/jira/browse/HBASE-29167) | Upgrade vega and its related js libraries | Major | security, UI | +| [HBASE-29182](https://issues.apache.org/jira/browse/HBASE-29182) | Bump jinja2 from 3.1.5 to 3.1.6 in /dev-support/flaky-tests | Major | dependabot, scripts, security | +| [HBASE-29316](https://issues.apache.org/jira/browse/HBASE-29316) | Backport HBASE-29292 to branch-2 | Major | . | +| [HBASE-29293](https://issues.apache.org/jira/browse/HBASE-29293) | Upgrade to latest opentelemetry libraries | Major | dependencies, tracing | +| [HBASE-29327](https://issues.apache.org/jira/browse/HBASE-29327) | Dependency manage byte-buddy and bump it to 1.15.11 | Major | dependencies | +| [HBASE-29360](https://issues.apache.org/jira/browse/HBASE-29360) | Bump JRuby to version 9.3.15.0 in branch-2.6 | Major | jruby, shell | +| [HBASE-29317](https://issues.apache.org/jira/browse/HBASE-29317) | Bump hbase-thirdparty to 4.1.11 | Major | dependencies, thirdparty | + + +## Release 2.6.2 - Unreleased (as of 2025-02-14) + + + +### IMPROVEMENTS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-26789](https://issues.apache.org/jira/browse/HBASE-26789) | Automatically add default security headers to http/rest if SSL enabled | Major | REST, UI | +| [HBASE-28917](https://issues.apache.org/jira/browse/HBASE-28917) | ColumnFamilyMismatchException mixes IA public and private | Major | backup&restore | +| [HBASE-28940](https://issues.apache.org/jira/browse/HBASE-28940) | Do not run the backwards compatibility tests with the default Hadoop3 version | Major | integration tests, test | +| [HBASE-28923](https://issues.apache.org/jira/browse/HBASE-28923) | Prioritize "orphan" blocks for eviction inside BucketCache.freespace | Major | . | +| [HBASE-28621](https://issues.apache.org/jira/browse/HBASE-28621) | PrefixFilter should use SEEK\_NEXT\_USING\_HINT | Major | Filters | +| [HBASE-28921](https://issues.apache.org/jira/browse/HBASE-28921) | Avoid bundling hbase-webapps folder in default jars | Major | security, UI | +| [HBASE-28070](https://issues.apache.org/jira/browse/HBASE-28070) | Replace javax.servlet.jsp dependency with tomcat-jasper | Major | security, UI | +| [HBASE-28972](https://issues.apache.org/jira/browse/HBASE-28972) | Limit the number of retries in FanOutOneBlockAsyncDFSOutputHelper.completeFile | Major | Filesystem Integration, io, wal | +| [HBASE-27638](https://issues.apache.org/jira/browse/HBASE-27638) | Get slow/large log response that matched the âCLIENT\_IP' without client port | Major | . | +| [HBASE-28268](https://issues.apache.org/jira/browse/HBASE-28268) | Provide option to skip wal while using TableOutputFormat | Minor | mapreduce | +| [HBASE-28963](https://issues.apache.org/jira/browse/HBASE-28963) | Updating Quota Factors is too expensive | Major | . | +| [HBASE-28965](https://issues.apache.org/jira/browse/HBASE-28965) | Make the approach in HBASE-28955 can work together with hadoop 2.x | Major | Filesystem Integration, hadoop2, io | +| [HBASE-28328](https://issues.apache.org/jira/browse/HBASE-28328) | Add an option to count different types of Delete Markers in RowCounter | Minor | mapreduce | +| [HBASE-28525](https://issues.apache.org/jira/browse/HBASE-28525) | Extend REST Documentation: Stateless Scanner, table exists, multiget with filter | Major | documentation, REST | +| [HBASE-28959](https://issues.apache.org/jira/browse/HBASE-28959) | Output fsreadtime in SlowLogPayLoad to hbase:slowlog | Minor | . | +| [HBASE-29009](https://issues.apache.org/jira/browse/HBASE-29009) | Depend on jaxws-rt instead jaxws-ri | Major | REST | +| [HBASE-29013](https://issues.apache.org/jira/browse/HBASE-29013) | Make PerformanceEvaluation support larger data sets | Minor | PE | +| [HBASE-29008](https://issues.apache.org/jira/browse/HBASE-29008) | Upgrade JAX-WS to to 2.3.7 | Major | REST | +| [HBASE-29040](https://issues.apache.org/jira/browse/HBASE-29040) | Fix incorrect description of "sampleRate" option of PerformanceEvaluation | Trivial | . | +| [HBASE-28600](https://issues.apache.org/jira/browse/HBASE-28600) | Enable setting blockcache on-heap sizes in bytes | Major | regionserver | +| [HBASE-29004](https://issues.apache.org/jira/browse/HBASE-29004) | Optimize unnecessary type castings in Scan and Get setter methods | Major | Performance | +| [HBASE-27659](https://issues.apache.org/jira/browse/HBASE-27659) | Incremental backups should re-use splits from last full backup | Major | . | +| [HBASE-29068](https://issues.apache.org/jira/browse/HBASE-29068) | Report percentFilesLocalPrimaryRegions metric | Minor | metrics, read replicas | +| [HBASE-29071](https://issues.apache.org/jira/browse/HBASE-29071) | StochasticLoadBalancer candidate generators should use a Map, rather than ordinal based indexing | Major | . | +| [HBASE-29099](https://issues.apache.org/jira/browse/HBASE-29099) | Avoid expensive BlockCacheKey.toString() calls when tracing is disabled | Major | Performance | +| [HBASE-29047](https://issues.apache.org/jira/browse/HBASE-29047) | Remove redundant methods in TestMasterObserver | Minor | . | +| [HBASE-29045](https://issues.apache.org/jira/browse/HBASE-29045) | Support new async-profiler \> 2.9 version | Major | profiler | + + +### BUG FIXES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28865](https://issues.apache.org/jira/browse/HBASE-28865) | Implement proper string builder for MoveRegionRequest in ProtobufUtil.getShortTextFormat | Major | logging | +| [HBASE-28876](https://issues.apache.org/jira/browse/HBASE-28876) | Should call ProcedureSchduler.completionCleanup for non-root procedure too | Major | proc-v2 | +| [HBASE-28894](https://issues.apache.org/jira/browse/HBASE-28894) | NPE on TestPrefetch.testPrefetchWithDelay | Major | . | +| [HBASE-28900](https://issues.apache.org/jira/browse/HBASE-28900) | Avoid resetting bucket cache during restart if inconsistency is observed for some blocks. | Major | BucketCache | +| [HBASE-28928](https://issues.apache.org/jira/browse/HBASE-28928) | Handle NPE in Split/Merge table when getMasterQuotaManager returns null | Major | proc-v2 | +| [HBASE-28948](https://issues.apache.org/jira/browse/HBASE-28948) | RegionMover tool fails when table is deleted | Major | . | +| [HBASE-28954](https://issues.apache.org/jira/browse/HBASE-28954) | Apply workaround for HADOOP-19164 for Hadoop 3.4.1 | Major | jenkins, test | +| [HBASE-28946](https://issues.apache.org/jira/browse/HBASE-28946) | Update nightlies to run with HADOOP2\_VERSION = 2.10.2 | Major | hadoop2 | +| [HBASE-28953](https://issues.apache.org/jira/browse/HBASE-28953) | Prefetch thread shouldn't run for master store | Minor | . | +| [HBASE-28976](https://issues.apache.org/jira/browse/HBASE-28976) | Fix UT flakeyness in TestBucketCache.testBlockAdditionWaitWhenCache and TestVerifyBucketCacheFile.testRetrieveFromFile | Major | . | +| [HBASE-28634](https://issues.apache.org/jira/browse/HBASE-28634) | There is a possibility that data cannot be obtained during reverse fuzzy query. | Major | Filters | +| [HBASE-29000](https://issues.apache.org/jira/browse/HBASE-29000) | SLF4j logging backend incorrectly picked up from Hadoop when external Hadoop is specified | Major | logging, scripts | +| [HBASE-28882](https://issues.apache.org/jira/browse/HBASE-28882) | Backup restores are broken if the backup has moved locations | Major | backup&restore | +| [HBASE-29005](https://issues.apache.org/jira/browse/HBASE-29005) | Cannot split hbase:quota table when quota enforcement is enabled | Major | master, Quotas | +| [HBASE-28931](https://issues.apache.org/jira/browse/HBASE-28931) | Poll SSL cert file for changes | Major | . | +| [HBASE-29021](https://issues.apache.org/jira/browse/HBASE-29021) | When StoreFileTracker is FILE, unable to recognize StoreFileListFile after upgrade from 2.5 to 2.6 | Critical | HFile, regionserver | +| [HBASE-28956](https://issues.apache.org/jira/browse/HBASE-28956) | RSMobFileCleanerChore may close the StoreFileReader object which is being used by Compaction thread | Major | Compaction, mob | +| [HBASE-28970](https://issues.apache.org/jira/browse/HBASE-28970) | Get asyncfs working with custom SASL mechanisms | Major | Filesystem Integration, hadoop3 | +| [HBASE-29046](https://issues.apache.org/jira/browse/HBASE-29046) | Log message is not correct when the Master bind address configured wrongly | Major | . | +| [HBASE-28023](https://issues.apache.org/jira/browse/HBASE-28023) | ITBLL's RollingBatchSuspendResumeRsAction runs the "suspendRs" method to perform the action, but it inadvertently uses the "waitForRegionServerToStop" method to check if it was executed successfully. | Major | . | +| [HBASE-29070](https://issues.apache.org/jira/browse/HBASE-29070) | Balancer cost function epsilon is imprecise | Major | . | +| [HBASE-28897](https://issues.apache.org/jira/browse/HBASE-28897) | Force CF compatibility during incremental backup | Major | backup&restore | +| [HBASE-29072](https://issues.apache.org/jira/browse/HBASE-29072) | StochasticLoadBalancer#areReplicasColocated ignores rack colocation | Major | . | +| [HBASE-29073](https://issues.apache.org/jira/browse/HBASE-29073) | StochasticLoadBalancer will always run the balancer on startup because of uninitialized sumMultiplier | Major | . | +| [HBASE-29088](https://issues.apache.org/jira/browse/HBASE-29088) | The denominator cannot be 0 when calculating percentages in SnapshotStats | Major | . | +| [HBASE-29089](https://issues.apache.org/jira/browse/HBASE-29089) | Remove optional flag from spymemcached dependency | Minor | BlockCache | +| [HBASE-29041](https://issues.apache.org/jira/browse/HBASE-29041) | Set UncaughtException Handler for RegionServer ExecutorService | Minor | regionserver | +| [HBASE-29111](https://issues.apache.org/jira/browse/HBASE-29111) | Data loss in table cloned from a snapshot | Major | dataloss, snapshots | +| [HBASE-29122](https://issues.apache.org/jira/browse/HBASE-29122) | Some modules are built with Hadoop 3.0-SNAPSHOT on branch-2.x | Critical | . | +| [HBASE-29114](https://issues.apache.org/jira/browse/HBASE-29114) | Restoring to original splits fails if backups are on separate FileSystem | Major | backup&restore | +| [HBASE-29124](https://issues.apache.org/jira/browse/HBASE-29124) | Restoring to original splits fails if bulkloads are on separate FileSystem | Major | backup&restore | +| [HBASE-29117](https://issues.apache.org/jira/browse/HBASE-29117) | Kerby version conflict with Hadoop 3.4 | Major | dependencies | + + +### SUB-TASKS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28906](https://issues.apache.org/jira/browse/HBASE-28906) | Run nightly tests with multiple Hadoop 3 versions | Major | integration tests, test | +| [HBASE-28638](https://issues.apache.org/jira/browse/HBASE-28638) | Fail-fast retry limit for specific errors to recover from remote procedure failure using server crash | Major | amv2, master, Region Assignment | +| [HBASE-28980](https://issues.apache.org/jira/browse/HBASE-28980) | Change the default Hadoop 3 version to 3.4.1 on branch-2.5 and branch-2.6 | Major | hadoop3 | +| [HBASE-29050](https://issues.apache.org/jira/browse/HBASE-29050) | Use node under 'hbase' label to run client integration tests | Major | . | +| [HBASE-29067](https://issues.apache.org/jira/browse/HBASE-29067) | Stagger the nightly tests on jenkins | Major | jenkins, scripts | +| [HBASE-29049](https://issues.apache.org/jira/browse/HBASE-29049) | Increase the interval for running flaky tests | Major | jenkins, scripts | + + +### OTHER: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28922](https://issues.apache.org/jira/browse/HBASE-28922) | Bump commons-io:commons-io from 2.11.0 to 2.14.0 | Major | dependabot, dependencies, security | +| [HBASE-28898](https://issues.apache.org/jira/browse/HBASE-28898) | Use reflection to access recoverLease(), setSafeMode() APIs. | Major | Filesystem Integration | +| [HBASE-28942](https://issues.apache.org/jira/browse/HBASE-28942) | Purge all netty 3 dependencies by default | Major | dependencies, security | +| [HBASE-28943](https://issues.apache.org/jira/browse/HBASE-28943) | Remove all jackson 1.x dependencies for hadoop-3 profile, since all jackson 1.x versions have vulnerabilities | Major | hadoop3, security | +| [HBASE-28949](https://issues.apache.org/jira/browse/HBASE-28949) | Remove the netty 3 dependency management section | Major | dependencies | +| [HBASE-28767](https://issues.apache.org/jira/browse/HBASE-28767) | Simplify backup bulk-loading code | Minor | backup&restore | +| [HBASE-29043](https://issues.apache.org/jira/browse/HBASE-29043) | Bump jinja2 from 3.1.4 to 3.1.5 in /dev-support/flaky-tests | Major | dependabot, scripts, security | +| [HBASE-29036](https://issues.apache.org/jira/browse/HBASE-29036) | Backport missing UI patches to branch-2.6 | Major | UI | +| [HBASE-29056](https://issues.apache.org/jira/browse/HBASE-29056) | Bump commons-io:commons-io from 2.14.0 to 2.18.0 | Major | dependencies | +| [HBASE-29086](https://issues.apache.org/jira/browse/HBASE-29086) | Bump hbase-thirdparty to 4.1.10 | Major | dependencies | +| [HBASE-29096](https://issues.apache.org/jira/browse/HBASE-29096) | Bump netty4 to 4.1.116.Final | Major | dependencies | + + +## Release 2.6.1 - Unreleased (as of 2024-10-09) + + + +### NEW FEATURES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28645](https://issues.apache.org/jira/browse/HBASE-28645) | Add build information to the REST server version endpoint | Minor | REST | + + +### IMPROVEMENTS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28523](https://issues.apache.org/jira/browse/HBASE-28523) | Use a single get call in REST multiget endpoint | Major | REST | +| [HBASE-28556](https://issues.apache.org/jira/browse/HBASE-28556) | Reduce memory copying in Rest server when serializing CellModel to Protobuf | Minor | REST | +| [HBASE-28563](https://issues.apache.org/jira/browse/HBASE-28563) | Closing ZooKeeper in ZKMainServer | Minor | Zookeeper | +| [HBASE-27938](https://issues.apache.org/jira/browse/HBASE-27938) | Enable PE to load any custom implementation of tests at runtime | Minor | test | +| [HBASE-25972](https://issues.apache.org/jira/browse/HBASE-25972) | Dual File Compaction | Major | . | +| [HBASE-28501](https://issues.apache.org/jira/browse/HBASE-28501) | Support non-SPNEGO authentication methods and implement session handling in REST java client library | Major | REST | +| [HBASE-26525](https://issues.apache.org/jira/browse/HBASE-26525) | Use unique thread name for group WALs | Major | wal | +| [HBASE-28613](https://issues.apache.org/jira/browse/HBASE-28613) | Use streaming when marshalling protobuf REST output | Major | REST | +| [HBASE-28614](https://issues.apache.org/jira/browse/HBASE-28614) | Introduce a field to display whether the snapshot is expired | Minor | shell, snapshots, UI | +| [HBASE-28625](https://issues.apache.org/jira/browse/HBASE-28625) | ExportSnapshot should verify checksums for the source file and the target file | Major | . | +| [HBASE-28540](https://issues.apache.org/jira/browse/HBASE-28540) | Cache Results in org.apache.hadoop.hbase.rest.client.RemoteHTable.Scanner | Minor | REST | +| [HBASE-28636](https://issues.apache.org/jira/browse/HBASE-28636) | Add UTs for testing copy/sync table between clusters | Major | mapreduce, test | +| [HBASE-28651](https://issues.apache.org/jira/browse/HBASE-28651) | Reformat the javadoc for CellChunkMap | Major | documentation, regionserver | +| [HBASE-28646](https://issues.apache.org/jira/browse/HBASE-28646) | Use Streams to unmarshall protobuf REST data | Major | REST | +| [HBASE-28671](https://issues.apache.org/jira/browse/HBASE-28671) | Add close method to REST client | Major | REST | +| [HBASE-28656](https://issues.apache.org/jira/browse/HBASE-28656) | Optimize the verifyCopyResult logic in ExportSnapshot | Critical | . | +| [HBASE-28687](https://issues.apache.org/jira/browse/HBASE-28687) | BackupSystemTable#checkSystemTable should ensure that the backup system tables are enabled | Major | backup&restore | +| [HBASE-28685](https://issues.apache.org/jira/browse/HBASE-28685) | Support non-root context in REST RemoteHTable and RemodeAdmin | Major | REST | +| [HBASE-28718](https://issues.apache.org/jira/browse/HBASE-28718) | Should support different license name for 'Apache License, Version 2.0' | Major | build, shading | +| [HBASE-28717](https://issues.apache.org/jira/browse/HBASE-28717) | Support FuzzyRowFilter in REST interface | Major | REST | +| [HBASE-28672](https://issues.apache.org/jira/browse/HBASE-28672) | Ensure large batches are not indefinitely blocked by quotas | Major | Quotas | +| [HBASE-28683](https://issues.apache.org/jira/browse/HBASE-28683) | Only allow one TableProcedureInterface for a single table to run at the same time for some special procedure types | Critical | master, proc-v2 | +| [HBASE-28428](https://issues.apache.org/jira/browse/HBASE-28428) | Zookeeper ConnectionRegistry APIs should have timeout | Major | . | +| [HBASE-28734](https://issues.apache.org/jira/browse/HBASE-28734) | Improve HBase shell snapshot command Doc with TTL option | Minor | shell | +| [HBASE-28686](https://issues.apache.org/jira/browse/HBASE-28686) | MapReduceBackupCopyJob should support custom DistCp options | Major | . | +| [HBASE-28522](https://issues.apache.org/jira/browse/HBASE-28522) | UNASSIGN proc indefinitely stuck on dead rs | Critical | proc-v2, Region Assignment | +| [HBASE-28732](https://issues.apache.org/jira/browse/HBASE-28732) | Fix typo in Jenkinsfile\_Github for jdk8 hadoop2 check | Major | jenkins | +| [HBASE-28725](https://issues.apache.org/jira/browse/HBASE-28725) | Use thirdparty protobuf for REST interface in HBase 2.x | Major | REST | +| [HBASE-28775](https://issues.apache.org/jira/browse/HBASE-28775) | Change the output of DatanodeInfo in the log to the hostname of the datanode | Minor | wal | +| [HBASE-28850](https://issues.apache.org/jira/browse/HBASE-28850) | Only return from ReplicationSink.replicationEntries while all background tasks are finished | Major | Replication, rpc | +| [HBASE-27118](https://issues.apache.org/jira/browse/HBASE-27118) | Add security headers to Thrift/HTTP server | Major | Thrift | +| [HBASE-28816](https://issues.apache.org/jira/browse/HBASE-28816) | The description of "hbase.superuser" is confusing | Major | documentation | +| [HBASE-27903](https://issues.apache.org/jira/browse/HBASE-27903) | Skip submitting Split/Merge procedure when split/merge is disabled at table level | Minor | Admin | +| [HBASE-28346](https://issues.apache.org/jira/browse/HBASE-28346) | Expose checkQuota to Coprocessor Endpoints | Major | . | +| [HBASE-28001](https://issues.apache.org/jira/browse/HBASE-28001) | Add request attribute support to BufferedMutator | Major | . | +| [HBASE-28770](https://issues.apache.org/jira/browse/HBASE-28770) | Support partial results in AggregateImplementation and AsyncAggregationClient | Major | Client, Coprocessors, Quotas | +| [HBASE-28905](https://issues.apache.org/jira/browse/HBASE-28905) | Skip excessive evaluations of LINK\_NAME\_PATTERN and REF\_NAME\_PATTERN regular expressions | Minor | . | + + +### BUG FIXES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28533](https://issues.apache.org/jira/browse/HBASE-28533) | Split procedure rollback can leave parent region state in SPLITTING after completion | Major | Region Assignment | +| [HBASE-28567](https://issues.apache.org/jira/browse/HBASE-28567) | Race condition causes MetaRegionLocationCache to never set watcher to populate meta location | Major | . | +| [HBASE-28459](https://issues.apache.org/jira/browse/HBASE-28459) | HFileOutputFormat2 ClassCastException with s3 magic committer | Major | . | +| [HBASE-28575](https://issues.apache.org/jira/browse/HBASE-28575) | Always printing error log when snapshot table | Minor | snapshots | +| [HBASE-28448](https://issues.apache.org/jira/browse/HBASE-28448) | CompressionTest hangs when run over a Ozone ofs path | Major | . | +| [HBASE-28502](https://issues.apache.org/jira/browse/HBASE-28502) | Backup manifest of full backup contains incomplete table list | Major | backup&restore | +| [HBASE-28598](https://issues.apache.org/jira/browse/HBASE-28598) | NPE for writer object access in AsyncFSWAL#closeWriter | Major | wal | +| [HBASE-28604](https://issues.apache.org/jira/browse/HBASE-28604) | Fix the error message in ReservoirSample's constructor | Major | util | +| [HBASE-28595](https://issues.apache.org/jira/browse/HBASE-28595) | Losing exception from scan RPC can lead to partial results | Critical | regionserver, Scanners | +| [HBASE-28568](https://issues.apache.org/jira/browse/HBASE-28568) | Incremental backup set does not correctly shrink | Major | backup&restore | +| [HBASE-28599](https://issues.apache.org/jira/browse/HBASE-28599) | RowTooBigException is thrown when duplicate increment RPC call is attempted | Major | regionserver | +| [HBASE-27915](https://issues.apache.org/jira/browse/HBASE-27915) | Update hbase\_docker with an extra Dockerfile compatible with mac m1 platfrom | Minor | . | +| [HBASE-28582](https://issues.apache.org/jira/browse/HBASE-28582) | ModifyTableProcedure should not reset TRSP on region node when closing unused region replicas | Critical | proc-v2 | +| [HBASE-28626](https://issues.apache.org/jira/browse/HBASE-28626) | MultiRowRangeFilter deserialization fails in org.apache.hadoop.hbase.rest.model.ScannerModel | Major | REST | +| [HBASE-28628](https://issues.apache.org/jira/browse/HBASE-28628) | Use Base64.getUrlEncoder().withoutPadding() in REST tests | Major | REST | +| [HBASE-28546](https://issues.apache.org/jira/browse/HBASE-28546) | Make WAL rolling exception clear | Minor | . | +| [HBASE-28622](https://issues.apache.org/jira/browse/HBASE-28622) | FilterListWithAND can swallow SEEK\_NEXT\_USING\_HINT | Major | Filters | +| [HBASE-28526](https://issues.apache.org/jira/browse/HBASE-28526) | hbase-rest client shading conflict with hbase-shaded-client in HBase 2.x | Major | REST | +| [HBASE-28420](https://issues.apache.org/jira/browse/HBASE-28420) | Aborting Active HMaster is not rejecting remote Procedure Reports | Critical | master, proc-v2 | +| [HBASE-28618](https://issues.apache.org/jira/browse/HBASE-28618) | The hadolint check in nightly build is broken | Major | scripts | +| [HBASE-28562](https://issues.apache.org/jira/browse/HBASE-28562) | Correct backup ancestor calculation | Major | backup&restore | +| [HBASE-28619](https://issues.apache.org/jira/browse/HBASE-28619) | Fix the inaccurate message when snapshot doesn't exist | Minor | snapshots | +| [HBASE-28539](https://issues.apache.org/jira/browse/HBASE-28539) | Merge of incremental backups fails if backups are on a separate FileSystem | Major | backup&restore | +| [HBASE-28549](https://issues.apache.org/jira/browse/HBASE-28549) | Make shell commands support column qualifiers with colons | Major | shell | +| [HBASE-28649](https://issues.apache.org/jira/browse/HBASE-28649) | Wrong properties are used to set up SSL for REST Client Kerberos authenticator | Major | REST | +| [HBASE-28666](https://issues.apache.org/jira/browse/HBASE-28666) | Dropping unclosed WALTailingReaders leads to leaked sockets | Minor | Replication, wal | +| [HBASE-28650](https://issues.apache.org/jira/browse/HBASE-28650) | REST multiget endpoint returns 500 error if no rows are specified | Minor | REST | +| [HBASE-28662](https://issues.apache.org/jira/browse/HBASE-28662) | Removing missing scanner via REST should return 404 | Minor | REST | +| [HBASE-28663](https://issues.apache.org/jira/browse/HBASE-28663) | CanaryTool continues executing and scanning after timeout | Minor | canary | +| [HBASE-28680](https://issues.apache.org/jira/browse/HBASE-28680) | BackupLogCleaner causes HMaster WALs to pile up indefinitely | Major | backup&restore, master | +| [HBASE-28658](https://issues.apache.org/jira/browse/HBASE-28658) | The failsafe snapshot should be deleted after rollback successfully | Major | Client, snapshots | +| [HBASE-28688](https://issues.apache.org/jira/browse/HBASE-28688) | Correct the usage for blanks ignore options in yetus | Major | build, jenkins | +| [HBASE-28703](https://issues.apache.org/jira/browse/HBASE-28703) | Data race in RecoveredEditsOutputSink while closing writers | Critical | wal | +| [HBASE-28714](https://issues.apache.org/jira/browse/HBASE-28714) | Hadoop check for hadoop 3.4.0 is failing | Critical | dependencies, hadoop3 | +| [HBASE-28364](https://issues.apache.org/jira/browse/HBASE-28364) | Warn: Cache key had block type null, but was found in L1 cache | Major | . | +| [HBASE-28665](https://issues.apache.org/jira/browse/HBASE-28665) | WALs not marked closed when there are errors in closing WALs | Minor | wal | +| [HBASE-28727](https://issues.apache.org/jira/browse/HBASE-28727) | SteppingSplitPolicy may not work when table enables region replication | Minor | . | +| [HBASE-28740](https://issues.apache.org/jira/browse/HBASE-28740) | Need to call parent class's serialization methods in CloseExcessRegionReplicasProcedure | Blocker | proc-v2 | +| [HBASE-28704](https://issues.apache.org/jira/browse/HBASE-28704) | The expired snapshot can be read by CopyTable or ExportSnapshot | Major | mapreduce, snapshots | +| [HBASE-28702](https://issues.apache.org/jira/browse/HBASE-28702) | TestBackupMerge fails 100% of times on flaky dashboard | Critical | backup&restore | +| [HBASE-28724](https://issues.apache.org/jira/browse/HBASE-28724) | BucketCache.notifyFileCachingCompleted may throw IllegalMonitorStateException | Major | . | +| [HBASE-28743](https://issues.apache.org/jira/browse/HBASE-28743) | Snapshot based mapreduce jobs fails with NPE while trying to close mslab within mapper | Major | snapshots | +| [HBASE-28716](https://issues.apache.org/jira/browse/HBASE-28716) | Users of QuotaRetriever should pass an existing connection | Minor | Admin | +| [HBASE-28655](https://issues.apache.org/jira/browse/HBASE-28655) | TestHFileCompressionZstd fails with IllegalArgumentException: Illegal bufferSize | Major | HFile, Operability | +| [HBASE-28756](https://issues.apache.org/jira/browse/HBASE-28756) | RegionSizeCalculator ignored the size of memstore, which leads Spark miss data | Major | mapreduce | +| [HBASE-28742](https://issues.apache.org/jira/browse/HBASE-28742) | CompactionTool fails with NPE when mslab is enabled | Major | Compaction | +| [HBASE-28748](https://issues.apache.org/jira/browse/HBASE-28748) | Replication blocking: InvalidProtocolBufferException$InvalidWireTypeException: Protocol message tag had invalid wire type. | Critical | Replication, wal | +| [HBASE-28722](https://issues.apache.org/jira/browse/HBASE-28722) | Should wipe out all the output directories before unstash in nightly job | Major | jenkins, scripts | +| [HBASE-28753](https://issues.apache.org/jira/browse/HBASE-28753) | FNFE may occur when accessing the region.jsp of the replica region | Major | Replication, UI | +| [HBASE-28389](https://issues.apache.org/jira/browse/HBASE-28389) | HBase backup yarn queue parameter ignored | Major | backup&restore | +| [HBASE-28760](https://issues.apache.org/jira/browse/HBASE-28760) | Exclude pom file of jaxws-ri in output tarball | Major | jenkins, scripts | +| [HBASE-28786](https://issues.apache.org/jira/browse/HBASE-28786) | Fix classname for command: copyreppeers in bin/hbase | Minor | Replication, scripts, tooling | +| [HBASE-28777](https://issues.apache.org/jira/browse/HBASE-28777) | mTLS client hostname verification doesn't work with OptionalSslHandler | Major | rpc | +| [HBASE-28690](https://issues.apache.org/jira/browse/HBASE-28690) | Aborting Active HMaster is not rejecting reportRegionStateTransition if procedure is initialised by next Active master | Major | proc-v2 | +| [HBASE-28802](https://issues.apache.org/jira/browse/HBASE-28802) | Log the IP when hbase.server.useip.enabled is set to true | Minor | regionserver | +| [HBASE-28643](https://issues.apache.org/jira/browse/HBASE-28643) | An unbounded backup failure message can cause an irrecoverable state for the given backup | Major | . | +| [HBASE-28697](https://issues.apache.org/jira/browse/HBASE-28697) | Don't clean bulk load system entries until backup is complete | Major | . | +| [HBASE-28792](https://issues.apache.org/jira/browse/HBASE-28792) | AsyncTableImpl should call coprocessor callbacks in a defined order | Major | Client | +| [HBASE-28669](https://issues.apache.org/jira/browse/HBASE-28669) | After one RegionServer restarts, another RegionServer leaks a connection to ZooKeeper | Minor | Replication | +| [HBASE-28778](https://issues.apache.org/jira/browse/HBASE-28778) | NPE may occur when opening master-status or table.jsp or procedure.jsp while Master is initializing | Major | UI | +| [HBASE-28810](https://issues.apache.org/jira/browse/HBASE-28810) | Improve BackupLogCleaner naming, debug logging | Major | backup&restore | +| [HBASE-28696](https://issues.apache.org/jira/browse/HBASE-28696) | Partition BackupSystemTable queries | Major | . | +| [HBASE-28867](https://issues.apache.org/jira/browse/HBASE-28867) | Backport "HBASE-20653 Add missing observer hooks for region server group to MasterObserver" to branch-2 | Major | rsgroup | +| [HBASE-28705](https://issues.apache.org/jira/browse/HBASE-28705) | BackupLogCleaner cleans required WALs when using multiple backuproots | Blocker | backup&restore | +| [HBASE-28187](https://issues.apache.org/jira/browse/HBASE-28187) | NPE when flushing a non-existing column family | Major | Client, regionserver | +| [HBASE-28803](https://issues.apache.org/jira/browse/HBASE-28803) | HBase Master stuck due to improper handling of WALSyncTimeoutException within UncheckedIOException | Critical | master, wal | +| [HBASE-28890](https://issues.apache.org/jira/browse/HBASE-28890) | RefCnt Leak error when caching index blocks at write time | Major | . | +| [HBASE-28396](https://issues.apache.org/jira/browse/HBASE-28396) | Quota throttling can cause a leak of scanners | Major | . | +| [HBASE-28842](https://issues.apache.org/jira/browse/HBASE-28842) | TestRequestAttributes should fail when expected | Major | . | +| [HBASE-28721](https://issues.apache.org/jira/browse/HBASE-28721) | AsyncFSWAL is broken when running against hadoop 3.4.0 | Major | hadoop3, wal | + + +### SUB-TASKS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28586](https://issues.apache.org/jira/browse/HBASE-28586) | Backport HBASE-24791 Improve HFileOutputFormat2 to avoid always call getTableRelativePath method | Major | . | +| [HBASE-26048](https://issues.apache.org/jira/browse/HBASE-26048) | [JDK17] Replace the usage of deprecated API ThreadGroup.destroy() | Major | proc-v2 | +| [HBASE-28049](https://issues.apache.org/jira/browse/HBASE-28049) | RSProcedureDispatcher to log the request details during retries | Minor | . | +| [HBASE-28652](https://issues.apache.org/jira/browse/HBASE-28652) | Backport HBASE-21785 master reports open regions as RITs and also messes up rit age metric | Major | . | +| [HBASE-28657](https://issues.apache.org/jira/browse/HBASE-28657) | Backport HBASE-28246 Expose region cached size over JMX metrics and report in the RS UI | Major | . | +| [HBASE-28679](https://issues.apache.org/jira/browse/HBASE-28679) | Upgrade yetus to a newer version | Major | build, jenkins | +| [HBASE-28677](https://issues.apache.org/jira/browse/HBASE-28677) | Add jdk 17 task for pre commit build for 2.x | Major | build, jenkins | +| [HBASE-28693](https://issues.apache.org/jira/browse/HBASE-28693) | Change flaky tests to run with jdk17 | Major | flakies, jenkins | +| [HBASE-28678](https://issues.apache.org/jira/browse/HBASE-28678) | Make nightly builds for 3.x java 17 only and add java 17 test for 2.x | Major | build, jenkins | +| [HBASE-28694](https://issues.apache.org/jira/browse/HBASE-28694) | Make client integration and packaging test work with java 17 | Major | jenkins, scripts | +| [HBASE-28723](https://issues.apache.org/jira/browse/HBASE-28723) | [JDK17] TestSecureIPC fails under JDK17 | Major | java, test | +| [HBASE-28737](https://issues.apache.org/jira/browse/HBASE-28737) | Add the slack channel related information in README.md | Major | documentation | +| [HBASE-28745](https://issues.apache.org/jira/browse/HBASE-28745) | Default Zookeeper ConnectionRegistry APIs timeout should be less | Minor | . | + + +### OTHER: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-28574](https://issues.apache.org/jira/browse/HBASE-28574) | Bump jinja2 from 3.1.3 to 3.1.4 in /dev-support/flaky-tests | Major | dependabot, scripts, security | +| [HBASE-28607](https://issues.apache.org/jira/browse/HBASE-28607) | Bump requests from 2.31.0 to 2.32.0 in /dev-support/flaky-tests | Major | dependabot, scripts, security | +| [HBASE-28605](https://issues.apache.org/jira/browse/HBASE-28605) | Add ErrorProne ban on Hadoop shaded thirdparty jars | Major | build | +| [HBASE-28616](https://issues.apache.org/jira/browse/HBASE-28616) | Remove/Deprecated the rs.\* related configuration in TableOutputFormat | Major | mapreduce | +| [HBASE-28635](https://issues.apache.org/jira/browse/HBASE-28635) | Bump io.airlift:aircompressor from 0.24 to 0.27 | Major | dependabot, dependencies, security | +| [HBASE-28661](https://issues.apache.org/jira/browse/HBASE-28661) | Fix compatibility issue in SecurityHeadersFilter in branch-2.x | Major | . | +| [HBASE-28699](https://issues.apache.org/jira/browse/HBASE-28699) | Bump jdk and maven versions in pre commit and nighly dockerfile | Major | jenkins, scripts | +| [HBASE-28698](https://issues.apache.org/jira/browse/HBASE-28698) | Add hadoop 3.4.0 in hadoop check | Major | jenkins, scripts | +| [HBASE-28707](https://issues.apache.org/jira/browse/HBASE-28707) | Backport the code changes in HBASE-28675 to branch-2.x | Major | . | +| [HBASE-28784](https://issues.apache.org/jira/browse/HBASE-28784) | Exclude samples and release-documentation zip of jaxws-ri from output tarball | Major | . | +| [HBASE-28793](https://issues.apache.org/jira/browse/HBASE-28793) | Update hbase-thirdparty to 4.1.8 | Major | dependencies | +| [HBASE-28805](https://issues.apache.org/jira/browse/HBASE-28805) | Implement chunked persistence of backing map for persistent bucket cache. | Major | BucketCache | +| [HBASE-28731](https://issues.apache.org/jira/browse/HBASE-28731) | Remove the IA.Private annotation on WALEdit's add methods as they have already been used by CP users | Major | Coprocessors, wal | +| [HBASE-28868](https://issues.apache.org/jira/browse/HBASE-28868) | Add missing permission check for updateRSGroupConfig in branch-2 | Minor | rsgroup | +| [HBASE-28642](https://issues.apache.org/jira/browse/HBASE-28642) | Hide old PR comments when posting new | Major | build, community | +| [HBASE-28879](https://issues.apache.org/jira/browse/HBASE-28879) | Bump hbase-thirdparty to 4.1.9 | Major | dependencies, thirdparty | +| [HBASE-28895](https://issues.apache.org/jira/browse/HBASE-28895) | Bump Avro dependency version to 1.11.4 | Major | . | + + +## Release 2.6.0 - Unreleased (as of 2024-04-29) + + + +### NEW FEATURES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-26323](https://issues.apache.org/jira/browse/HBASE-26323) | Introduce a SnapshotProcedure | Major | proc-v2, snapshots | +| [HBASE-26666](https://issues.apache.org/jira/browse/HBASE-26666) | Add native TLS encryption support to RPC server/client | Major | encryption, security | +| [HBASE-27264](https://issues.apache.org/jira/browse/HBASE-27264) | Add options to consider compressed size when delimiting blocks during hfile writes | Major | . | +| [HBASE-20904](https://issues.apache.org/jira/browse/HBASE-20904) | Prometheus metrics http endpoint for monitoring integration | Major | metrics, monitoring | +| [HBASE-27304](https://issues.apache.org/jira/browse/HBASE-27304) | Support using IP to expose master/rs servers for some special scenarios | Minor | master, regionserver | +| [HBASE-27314](https://issues.apache.org/jira/browse/HBASE-27314) | Make index block be customized and configured | Major | . | +| [HBASE-26809](https://issues.apache.org/jira/browse/HBASE-26809) | Report client backoff time for server overloaded in ConnectionMetrics | Major | . | +| [HBASE-27444](https://issues.apache.org/jira/browse/HBASE-27444) | Add tool commands list\_enabled\_tables and list\_disabled\_tables | Minor | master | +| [HBASE-27347](https://issues.apache.org/jira/browse/HBASE-27347) | Port FileWatcher from ZK to autodetect keystore/truststore changes in TLS connections | Major | IPC/RPC, security | +| [HBASE-27238](https://issues.apache.org/jira/browse/HBASE-27238) | Backport Backup/Restore to 2.x | Major | backport, backup&restore | +| [HBASE-26913](https://issues.apache.org/jira/browse/HBASE-26913) | Replication Observability Framework | Major | regionserver, Replication | +| [HBASE-27110](https://issues.apache.org/jira/browse/HBASE-27110) | Move replication peer storage from zookeeper to other storage systems | Major | Replication | +| [HBASE-27904](https://issues.apache.org/jira/browse/HBASE-27904) | A random data generator tool leveraging bulk load. | Major | util | +| [HBASE-26867](https://issues.apache.org/jira/browse/HBASE-26867) | Introduce a FlushProcedure | Minor | proc-v2 | +| [HBASE-28168](https://issues.apache.org/jira/browse/HBASE-28168) | Add option in RegionMover.java to isolate one or more regions on the RegionSever | Minor | . | +| [HBASE-28064](https://issues.apache.org/jira/browse/HBASE-28064) | Implement truncate\_region command to truncate region directly from FS | Major | Admin, shell | +| [HBASE-27784](https://issues.apache.org/jira/browse/HBASE-27784) | support quota user overrides | Major | . | +| [HBASE-28216](https://issues.apache.org/jira/browse/HBASE-28216) | HDFS erasure coding support for table data dirs | Major | . | +| [HBASE-27657](https://issues.apache.org/jira/browse/HBASE-27657) | Connection and Request Attributes | Major | . | +| [HBASE-26192](https://issues.apache.org/jira/browse/HBASE-26192) | Master UI hbck should provide a JSON formatted output option | Minor | . | + + +### IMPROVEMENTS: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-26554](https://issues.apache.org/jira/browse/HBASE-26554) | Introduce a new parameter in jmx servlet to exclude the specific mbean | Minor | metrics | +| [HBASE-26943](https://issues.apache.org/jira/browse/HBASE-26943) | HMaster page style display confusion | Minor | master | +| [HBASE-26983](https://issues.apache.org/jira/browse/HBASE-26983) | Upgrade JRuby to 9.3.4.0 | Major | shell | +| [HBASE-27232](https://issues.apache.org/jira/browse/HBASE-27232) | Fix checking for encoded block size when deciding if block should be closed | Major | . | +| [HBASE-27185](https://issues.apache.org/jira/browse/HBASE-27185) | Rewrite NettyRpcServer to decode rpc request with netty handler | Major | netty, rpc | +| [HBASE-27144](https://issues.apache.org/jira/browse/HBASE-27144) | Add special rpc handlers for bulkload operations | Minor | regionserver, rpc | +| [HBASE-27278](https://issues.apache.org/jira/browse/HBASE-27278) | Improve TestTlsIPC to reuse existing IPC test code | Major | IPC/RPC, test | +| [HBASE-27279](https://issues.apache.org/jira/browse/HBASE-27279) | Make SslHandler work with SaslWrapHandler/SaslUnwrapHandler | Major | IPC/RPC, security | +| [HBASE-27320](https://issues.apache.org/jira/browse/HBASE-27320) | hide some sensitive configuration information in the UI | Minor | security, UI | +| [HBASE-27338](https://issues.apache.org/jira/browse/HBASE-27338) | brotli compression lib tests fail on arm64 | Minor | . | +| [HBASE-27342](https://issues.apache.org/jira/browse/HBASE-27342) | Use Hadoop Credentials API to retrieve passwords of TLS key/trust stores | Major | IPC/RPC, security | +| [HBASE-27332](https://issues.apache.org/jira/browse/HBASE-27332) | Remove RejectedExecutionHandler for long/short compaction thread pools | Minor | Compaction | +| [HBASE-27340](https://issues.apache.org/jira/browse/HBASE-27340) | Artifacts with resolved profiles | Minor | build, pom | +| [HBASE-27224](https://issues.apache.org/jira/browse/HBASE-27224) | HFile tool statistic sampling produces misleading results | Major | . | +| [HBASE-27346](https://issues.apache.org/jira/browse/HBASE-27346) | Autodetect key/truststore file type from file extension | Major | security | +| [HBASE-27361](https://issues.apache.org/jira/browse/HBASE-27361) | Add .flattened-pom.xml to .gitignore | Major | build | +| [HBASE-27370](https://issues.apache.org/jira/browse/HBASE-27370) | Avoid decompressing blocks when reading from bucket cache prefetch threads | Major | . | +| [HBASE-27280](https://issues.apache.org/jira/browse/HBASE-27280) | Add mutual authentication support to TLS | Major | . | +| [HBASE-27391](https://issues.apache.org/jira/browse/HBASE-27391) | Downgrade ERROR log to DEBUG in ConnectionUtils.updateStats | Major | . | +| [HBASE-27365](https://issues.apache.org/jira/browse/HBASE-27365) | Minimise block addition failures due to no space in bucket cache writers queue by introducing wait time | Major | BucketCache | +| [HBASE-27395](https://issues.apache.org/jira/browse/HBASE-27395) | Adding description to Prometheus metrics | Minor | metrics | +| [HBASE-27339](https://issues.apache.org/jira/browse/HBASE-27339) | Improve sasl connection failure log message to include server | Minor | Client | +| [HBASE-27159](https://issues.apache.org/jira/browse/HBASE-27159) | Emit source metrics for BlockCacheExpressHitPercent | Minor | BlockCache, metrics | +| [HBASE-27406](https://issues.apache.org/jira/browse/HBASE-27406) | Make "/prometheus" endpoint accessible from HBase UI | Minor | UI | +| [HBASE-27363](https://issues.apache.org/jira/browse/HBASE-27363) | Fix the config key name for PREFETCH\_PERSISTENCE\_PATH\_KEY | Trivial | BucketCache | +| [HBASE-27434](https://issues.apache.org/jira/browse/HBASE-27434) | Use $revision as placeholder for maven version to make it easier to control the version from command line | Major | build, pom | +| [HBASE-27167](https://issues.apache.org/jira/browse/HBASE-27167) | s390x: Skip tests on unsupported compression libs | Major | build, pom | +| [HBASE-27450](https://issues.apache.org/jira/browse/HBASE-27450) | Update all our python scripts to use python3 | Major | scripts | +| [HBASE-27448](https://issues.apache.org/jira/browse/HBASE-27448) | Add an admin method to get replication enabled state | Major | Admin, Client | +| [HBASE-27414](https://issues.apache.org/jira/browse/HBASE-27414) | Search order for locations in HFileLink | Minor | Performance | +| [HBASE-27495](https://issues.apache.org/jira/browse/HBASE-27495) | Improve HFileLinkCleaner to validate back reference links ahead the next traverse | Major | master | +| [HBASE-27408](https://issues.apache.org/jira/browse/HBASE-27408) | Improve BucketAllocatorException log to always include HFile name | Major | . | +| [HBASE-27496](https://issues.apache.org/jira/browse/HBASE-27496) | Optionally limit the amount of plans executed in the Normalizer | Minor | Normalizer | +| [HBASE-27506](https://issues.apache.org/jira/browse/HBASE-27506) | Optionally disable sorting directories by size in CleanerChore | Minor | . | +| [HBASE-27503](https://issues.apache.org/jira/browse/HBASE-27503) | Support replace \<FILE-PATH\> in GC\_OPTS for ZGC | Minor | scripts | +| [HBASE-27512](https://issues.apache.org/jira/browse/HBASE-27512) | Add file \`.git-blame-ignore-revs\` for \`git blame\` | Trivial | . | +| [HBASE-27487](https://issues.apache.org/jira/browse/HBASE-27487) | Slow meta can create pathological feedback loop with multigets | Major | . | +| [HBASE-27466](https://issues.apache.org/jira/browse/HBASE-27466) | hbase client metrics per user specified identity on hconnections. | Major | Client | +| [HBASE-27490](https://issues.apache.org/jira/browse/HBASE-27490) | Locating regions for all actions of batch requests can exceed operation timeout | Major | . | +| [HBASE-22924](https://issues.apache.org/jira/browse/HBASE-22924) | GitHUB PR job should use when clause to filter to just PRs. | Minor | build, community | +| [HBASE-27491](https://issues.apache.org/jira/browse/HBASE-27491) | AsyncProcess should not clear meta cache for RejectedExecutionException | Major | . | +| [HBASE-27435](https://issues.apache.org/jira/browse/HBASE-27435) | Make Prometheus metrics queryable | Minor | metrics | +| [HBASE-27459](https://issues.apache.org/jira/browse/HBASE-27459) | Improve our hbase\_docker to be able to build and start standalone clusters other than master branch | Major | scripts | +| [HBASE-27530](https://issues.apache.org/jira/browse/HBASE-27530) | Fix comment syntax errors | Trivial | documentation | +| [HBASE-27253](https://issues.apache.org/jira/browse/HBASE-27253) | Make slow log configs updatable with configuration observer | Major | . | +| [HBASE-27474](https://issues.apache.org/jira/browse/HBASE-27474) | Evict blocks on split/merge; Avoid caching reference/hlinks if compaction is enabled | Major | . | +| [HBASE-27540](https://issues.apache.org/jira/browse/HBASE-27540) | Client metrics for success/failure counts. | Major | Client, metrics | +| [HBASE-27233](https://issues.apache.org/jira/browse/HBASE-27233) | Read blocks into off-heap if caching is disabled for read | Major | . | +| [HBASE-27514](https://issues.apache.org/jira/browse/HBASE-27514) | Move some persistent states from zookeeper to master region | Major | master, Zookeeper | +| [HBASE-27531](https://issues.apache.org/jira/browse/HBASE-27531) | AsyncRequestFutureImpl unnecessarily clears meta cache for full server | Major | . | +| [HBASE-27565](https://issues.apache.org/jira/browse/HBASE-27565) | Make the initial corePoolSize configurable for ChoreService | Major | conf | +| [HBASE-27529](https://issues.apache.org/jira/browse/HBASE-27529) | Provide RS coproc ability to attach WAL extended attributes to mutations at replication sink | Major | Coprocessors, Replication | +| [HBASE-27493](https://issues.apache.org/jira/browse/HBASE-27493) | Allow namespace admins to clone snapshots created by them | Major | snapshots | +| [HBASE-27562](https://issues.apache.org/jira/browse/HBASE-27562) | Publish SBOM artifacts | Major | java | +| [HBASE-27539](https://issues.apache.org/jira/browse/HBASE-27539) | Encapsulate and centralise access to ref count through StoreFileInfo | Major | . | +| [HBASE-27541](https://issues.apache.org/jira/browse/HBASE-27541) | Backups should be able to be restored to a separate filesystem | Minor | backup&restore | +| [HBASE-27542](https://issues.apache.org/jira/browse/HBASE-27542) | Remove unneeded distcp log cleanup after incremental backups | Minor | backup&restore | +| [HBASE-27551](https://issues.apache.org/jira/browse/HBASE-27551) | Add config options to delay assignment to retain last region location | Major | . | +| [HBASE-27583](https://issues.apache.org/jira/browse/HBASE-27583) | Remove -X option when building protoc check in nightly and pre commit job | Major | jenkins, scripts | +| [HBASE-27558](https://issues.apache.org/jira/browse/HBASE-27558) | Scan quotas and limits should account for total block IO | Major | . | +| [HBASE-27598](https://issues.apache.org/jira/browse/HBASE-27598) | Upgrade mockito to 4.x | Major | dependencies, test | +| [HBASE-27570](https://issues.apache.org/jira/browse/HBASE-27570) | Unify tracking of block IO across all read request types | Major | . | +| [HBASE-27534](https://issues.apache.org/jira/browse/HBASE-27534) | Determine too large requests by response block size rather than cell size | Major | . | +| [HBASE-27590](https://issues.apache.org/jira/browse/HBASE-27590) | Change Iterable to List in SnapshotFileCache | Minor | . | +| [HBASE-21521](https://issues.apache.org/jira/browse/HBASE-21521) | Expose master startup status via web UI | Major | master, UI | +| [HBASE-15242](https://issues.apache.org/jira/browse/HBASE-15242) | Client metrics for retries and timeouts | Major | metrics | +| [HBASE-27655](https://issues.apache.org/jira/browse/HBASE-27655) | Remove the empty path annotation from ClusterMetricsResource | Trivial | . | +| [HBASE-27666](https://issues.apache.org/jira/browse/HBASE-27666) | Allow preCompact hooks to return scanners whose cells can be shipped | Major | . | +| [HBASE-23102](https://issues.apache.org/jira/browse/HBASE-23102) | Improper Usage of Map putIfAbsent | Minor | . | +| [HBASE-27458](https://issues.apache.org/jira/browse/HBASE-27458) | Use ReadWriteLock for region scanner readpoint map | Minor | Scanners | +| [HBASE-23983](https://issues.apache.org/jira/browse/HBASE-23983) | Spotbugs warning complain on master build | Major | . | +| [HBASE-27670](https://issues.apache.org/jira/browse/HBASE-27670) | Improve FSUtils to directly obtain FSDataOutputStream | Major | Filesystem Integration | +| [HBASE-27672](https://issues.apache.org/jira/browse/HBASE-27672) | Read RPC threads may BLOCKED at the Configuration.get when using java compression | Minor | . | +| [HBASE-27681](https://issues.apache.org/jira/browse/HBASE-27681) | Refactor Table Latency Metrics | Major | . | +| [HBASE-27632](https://issues.apache.org/jira/browse/HBASE-27632) | Refactor WAL.Reader implementation so we can better support WAL splitting and replication | Major | Replication, wal | +| [HBASE-27615](https://issues.apache.org/jira/browse/HBASE-27615) | Add group of regionServer on Master webUI | Major | . | +| [HBASE-27686](https://issues.apache.org/jira/browse/HBASE-27686) | Recovery of BucketCache and Prefetched data after RS Crash | Major | BucketCache | +| [HBASE-27710](https://issues.apache.org/jira/browse/HBASE-27710) | ByteBuff ref counting is too expensive for on-heap buffers | Major | . | +| [HBASE-27646](https://issues.apache.org/jira/browse/HBASE-27646) | Should not use pread when prefetching in HFilePreadReader | Minor | Performance | +| [HBASE-27313](https://issues.apache.org/jira/browse/HBASE-27313) | Persist list of Hfiles names for which prefetch is done | Major | BucketCache | +| [HBASE-27676](https://issues.apache.org/jira/browse/HBASE-27676) | Scan handlers in the RPC executor should match at least one scan queues | Major | . | +| [HBASE-27744](https://issues.apache.org/jira/browse/HBASE-27744) | Update compression dependencies | Minor | io | +| [HBASE-26526](https://issues.apache.org/jira/browse/HBASE-26526) | Introduce a timeout to shutdown of WAL | Major | wal | +| [HBASE-27758](https://issues.apache.org/jira/browse/HBASE-27758) | Inconsistent synchronization in MetricsUserSourceImpl | Major | . | +| [HBASE-27756](https://issues.apache.org/jira/browse/HBASE-27756) | Make request guardrail configs in RSRpcServices live updatable | Major | . | +| [HBASE-27765](https://issues.apache.org/jira/browse/HBASE-27765) | Add biggest cell related info into web ui | Major | HFile, UI | +| [HBASE-27713](https://issues.apache.org/jira/browse/HBASE-27713) | Remove numRegions in Region Metrics | Major | metrics | +| [HBASE-27780](https://issues.apache.org/jira/browse/HBASE-27780) | FileChangeWatcher improvements | Major | . | +| [HBASE-27422](https://issues.apache.org/jira/browse/HBASE-27422) | Support replication for hbase:acl | Major | acl, Replication | +| [HBASE-27787](https://issues.apache.org/jira/browse/HBASE-27787) | Downgrade noisy info log in NettyRpcConnection when TLS enabled | Major | . | +| [HBASE-27785](https://issues.apache.org/jira/browse/HBASE-27785) | Encapsulate and centralize totalBufferUsed in ReplicationSourceManager | Major | Replication | +| [HBASE-27536](https://issues.apache.org/jira/browse/HBASE-27536) | Include more request information in slowlog for Scans | Major | . | +| [HBASE-27535](https://issues.apache.org/jira/browse/HBASE-27535) | Separate slowlog thresholds for scans vs other requests | Major | . | +| [HBASE-27818](https://issues.apache.org/jira/browse/HBASE-27818) | Split TestReplicationDroppedTables | Major | Replication, test | +| [HBASE-27808](https://issues.apache.org/jira/browse/HBASE-27808) | Change flatten mode for oss in our pom file | Major | community, pom | +| [HBASE-27819](https://issues.apache.org/jira/browse/HBASE-27819) | 10k RpcServer.MAX\_REQUEST\_SIZE is not enough in ReplicationDroppedTable related tests | Major | test | +| [HBASE-27792](https://issues.apache.org/jira/browse/HBASE-27792) | Guard Master/RS Dump Servlet behind admin walls | Minor | security, UI | +| [HBASE-27821](https://issues.apache.org/jira/browse/HBASE-27821) | Split TestFuzzyRowFilterEndToEnd | Major | test | +| [HBASE-27799](https://issues.apache.org/jira/browse/HBASE-27799) | RpcThrottlingException wait interval message is misleading between 0-1s | Major | . | +| [HBASE-27838](https://issues.apache.org/jira/browse/HBASE-27838) | Update zstd-jni from version 1.5.4-2 -\> 1.5.5-2 | Minor | io | +| [HBASE-27844](https://issues.apache.org/jira/browse/HBASE-27844) | changed type names to avoid conflicts with built-in types | Minor | build | +| [HBASE-27788](https://issues.apache.org/jira/browse/HBASE-27788) | Skip family comparing when compare cells inner the store | Major | Performance | +| [HBASE-27858](https://issues.apache.org/jira/browse/HBASE-27858) | Update surefire version to 3.0.0 and use the SurefireForkNodeFactory | Minor | test | +| [HBASE-27870](https://issues.apache.org/jira/browse/HBASE-27870) | Eliminate the 'WARNING: package jdk.internal.util.random not in java.base' when running UTs with jdk11 | Major | build, pom, test | +| [HBASE-27812](https://issues.apache.org/jira/browse/HBASE-27812) | Provide option in HBase UI to disable stack trace for security | Minor | UI | +| [HBASE-27848](https://issues.apache.org/jira/browse/HBASE-27848) | Should fast-fail if unmatched column family exists when using ImportTsv | Major | mapreduce | +| [HBASE-27876](https://issues.apache.org/jira/browse/HBASE-27876) | Only generate SBOM when releasing | Minor | build, pom | +| [HBASE-27855](https://issues.apache.org/jira/browse/HBASE-27855) | Support dynamic adjustment of flusher count | Minor | regionserver | +| [HBASE-27899](https://issues.apache.org/jira/browse/HBASE-27899) | Beautify the output information of the getStats method in ReplicationSource | Minor | Replication | +| [HBASE-27888](https://issues.apache.org/jira/browse/HBASE-27888) | Record readBlock message in log when it takes too long time | Minor | HFile | +| [HBASE-27939](https://issues.apache.org/jira/browse/HBASE-27939) | Bump snappy-java from 1.1.9.1 to 1.1.10.1 | Major | dependabot, security | +| [HBASE-27902](https://issues.apache.org/jira/browse/HBASE-27902) | New async admin api to invoke coproc on multiple servers | Major | . | +| [HBASE-27892](https://issues.apache.org/jira/browse/HBASE-27892) | Report memstore on-heap and off-heap size as jmx metrics | Major | metrics | +| [HBASE-27948](https://issues.apache.org/jira/browse/HBASE-27948) | Report memstore on-heap and off-heap size as jmx metrics in sub=Memory bean | Major | . | +| [HBASE-27954](https://issues.apache.org/jira/browse/HBASE-27954) | Eliminate duplicate code for getNonRootIndexedKey in HFileBlockIndex | Major | HFile | +| [HBASE-27920](https://issues.apache.org/jira/browse/HBASE-27920) | Skipping compact for this region if the table disable compaction | Major | Compaction | +| [HBASE-27845](https://issues.apache.org/jira/browse/HBASE-27845) | Distinguish the mutate types of rpc error in MetricsConnection | Minor | metrics | +| [HBASE-27798](https://issues.apache.org/jira/browse/HBASE-27798) | Client side should back off based on wait interval in RpcThrottlingException | Major | . | +| [HBASE-27897](https://issues.apache.org/jira/browse/HBASE-27897) | ConnectionImplementation#locateRegionInMeta should pause and retry when taking user region lock failed | Major | Client | +| [HBASE-27906](https://issues.apache.org/jira/browse/HBASE-27906) | Fix the javadoc for SyncFutureCache | Minor | documentation | +| [HBASE-26874](https://issues.apache.org/jira/browse/HBASE-26874) | VerifyReplication recompare async | Major | . | +| [HBASE-27896](https://issues.apache.org/jira/browse/HBASE-27896) | Disable hdfs readahead for pread reads | Major | . | +| [HBASE-27956](https://issues.apache.org/jira/browse/HBASE-27956) | Support wall clock profiling in ProfilerServlet | Major | . | +| [HBASE-27996](https://issues.apache.org/jira/browse/HBASE-27996) | Remove InterfaceStability.Stable from HTable | Major | . | +| [HBASE-28012](https://issues.apache.org/jira/browse/HBASE-28012) | Avoid CellUtil.cloneRow in BufferedEncodedSeeker | Major | Offheaping, Performance | +| [HBASE-28025](https://issues.apache.org/jira/browse/HBASE-28025) | Enhance ByteBufferUtils.findCommonPrefix to compare 8 bytes each time | Major | Performance | +| [HBASE-27717](https://issues.apache.org/jira/browse/HBASE-27717) | Add rsgroup name for dead region servers on master UI | Minor | UI | +| [HBASE-28051](https://issues.apache.org/jira/browse/HBASE-28051) | The javadoc about RegionProcedureStore.delete is incorrect | Trivial | documentation | +| [HBASE-28052](https://issues.apache.org/jira/browse/HBASE-28052) | Removing the useless parameters from ProcedureExecutor.loadProcedures | Minor | proc-v2 | +| [HBASE-28038](https://issues.apache.org/jira/browse/HBASE-28038) | Add TLS settings to ZooKeeper client | Major | Zookeeper | +| [HBASE-28059](https://issues.apache.org/jira/browse/HBASE-28059) | Use correct units in RegionLoad#getStoreUncompressedSizeMB() | Major | Admin | +| [HBASE-28008](https://issues.apache.org/jira/browse/HBASE-28008) | Add support for tcnative | Major | . | +| [HBASE-27853](https://issues.apache.org/jira/browse/HBASE-27853) | Add client side table metrics for rpc calls and request latency. | Major | Client, metrics | +| [HBASE-27981](https://issues.apache.org/jira/browse/HBASE-27981) | Add connection and request attributes to slow log | Major | . | +| [HBASE-28068](https://issues.apache.org/jira/browse/HBASE-28068) | Add hbase.normalizer.merge.merge\_request\_max\_number\_of\_regions property to limit max number of regions in a merge request for merge normalization | Minor | Normalizer | +| [HBASE-28128](https://issues.apache.org/jira/browse/HBASE-28128) | Reject requests at RPC layer when RegionServer is aborting | Major | . | +| [HBASE-22138](https://issues.apache.org/jira/browse/HBASE-22138) | Undo our direct dependence on protos in google.protobuf.Any in Procedure.proto | Major | proc-v2, Protobufs | +| [HBASE-28135](https://issues.apache.org/jira/browse/HBASE-28135) | Specify -Xms for tests | Major | test | +| [HBASE-28138](https://issues.apache.org/jira/browse/HBASE-28138) | Make the connection idle timeout configurable for the embedded HTTP servers | Minor | . | +| [HBASE-28113](https://issues.apache.org/jira/browse/HBASE-28113) | Modify the way of acquiring the RegionStateNode lock in checkOnlineRegionsReport to tryLock | Major | master | +| [HBASE-28043](https://issues.apache.org/jira/browse/HBASE-28043) | Reduce seeks from beginning of block in StoreFileScanner.seekToPreviousRow | Major | . | +| [HBASE-28085](https://issues.apache.org/jira/browse/HBASE-28085) | Configurably use scanner timeout as rpc timeout for scanner next calls | Major | . | +| [HBASE-27276](https://issues.apache.org/jira/browse/HBASE-27276) | Reduce reflection overhead in Filter deserialization | Major | . | +| [HBASE-28193](https://issues.apache.org/jira/browse/HBASE-28193) | Update plugin for SBOM generation to 2.7.10 | Major | build, pom | +| [HBASE-28176](https://issues.apache.org/jira/browse/HBASE-28176) | PrefetchExecutor should stop once cache reaches capacity | Major | . | +| [HBASE-25549](https://issues.apache.org/jira/browse/HBASE-25549) | Provide a switch that allows avoiding reopening all regions when modifying a table to prevent RIT storms. | Major | master, shell | +| [HBASE-28212](https://issues.apache.org/jira/browse/HBASE-28212) | Do not need to maintain rollback step when root procedure does not support rollback | Major | master, proc-v2 | +| [HBASE-28215](https://issues.apache.org/jira/browse/HBASE-28215) | Region reopen procedure should support some sort of throttling | Major | master, proc-v2 | +| [HBASE-27532](https://issues.apache.org/jira/browse/HBASE-27532) | Add block bytes scanned metrics | Major | . | +| [HBASE-28209](https://issues.apache.org/jira/browse/HBASE-28209) | Create a jmx metrics to expose the oldWALs directory size | Major | metrics | +| [HBASE-28029](https://issues.apache.org/jira/browse/HBASE-28029) | Netty SSL throughput improvement | Major | . | +| [HBASE-21243](https://issues.apache.org/jira/browse/HBASE-21243) | Correct java-doc for the method RpcServer.getRemoteAddress() | Trivial | . | +| [HBASE-20528](https://issues.apache.org/jira/browse/HBASE-20528) | Revise collections copying from iteration to built-in function | Minor | . | +| [HBASE-27402](https://issues.apache.org/jira/browse/HBASE-27402) | Clone Scan in ClientScanner to avoid errors with Scan re-used | Major | . | +| [HBASE-28307](https://issues.apache.org/jira/browse/HBASE-28307) | Add hbase-openssl module and include in release binaries | Major | . | +| [HBASE-28256](https://issues.apache.org/jira/browse/HBASE-28256) | Enhance ByteBufferUtils.readVLong to read more bytes at a time | Major | Performance | +| [HBASE-28306](https://issues.apache.org/jira/browse/HBASE-28306) | Add property to customize Version information | Major | . | +| [HBASE-28305](https://issues.apache.org/jira/browse/HBASE-28305) | Add "Uncompressed StoreFileSize" column to the table.jsp | Minor | UI | +| [HBASE-28319](https://issues.apache.org/jira/browse/HBASE-28319) | Expose DelegatingRpcScheduler as IA.LimitedPrivate | Major | . | +| [HBASE-28271](https://issues.apache.org/jira/browse/HBASE-28271) | Infinite waiting on lock acquisition by snapshot can result in unresponsive master | Major | . | +| [HBASE-28302](https://issues.apache.org/jira/browse/HBASE-28302) | Add tracking of fs read times in ScanMetrics and slow logs | Major | . | +| [HBASE-28327](https://issues.apache.org/jira/browse/HBASE-28327) | Add remove(String key, Metric metric) method to MetricRegistry interface | Major | metrics | +| [HBASE-28332](https://issues.apache.org/jira/browse/HBASE-28332) | Type conversion is no need in method CompactionChecker.chore() | Minor | Compaction | +| [HBASE-28317](https://issues.apache.org/jira/browse/HBASE-28317) | RpcCallContext should expose client's TLS certificate | Minor | . | +| [HBASE-26642](https://issues.apache.org/jira/browse/HBASE-26642) | Increase the timeout for TestStochasticLoadBalancerRegionReplicaLargeCluster | Major | Balancer, test | +| [HBASE-28190](https://issues.apache.org/jira/browse/HBASE-28190) | Add slow sync log rolling test in TestAsyncLogRolling | Minor | test | +| [HBASE-28334](https://issues.apache.org/jira/browse/HBASE-28334) | Add comment around erasure coding policy in DEFAULT\_VALUE map | Major | . | +| [HBASE-27687](https://issues.apache.org/jira/browse/HBASE-27687) | Enhance quotas to consume blockBytesScanned rather than response size | Major | . | +| [HBASE-27800](https://issues.apache.org/jira/browse/HBASE-27800) | Add support for default user quotas | Major | . | +| [HBASE-28349](https://issues.apache.org/jira/browse/HBASE-28349) | Atomic requests should increment read usage in quotas | Major | . | +| [HBASE-28357](https://issues.apache.org/jira/browse/HBASE-28357) | MoveWithAck#isSuccessfulScan for Region movement should use Region End Key for limiting scan to one region only. | Minor | Region Assignment | +| [HBASE-28356](https://issues.apache.org/jira/browse/HBASE-28356) | RegionServer Canary can should use Scan just like Region Canary with option to enable Raw Scan | Minor | canary | +| [HBASE-28367](https://issues.apache.org/jira/browse/HBASE-28367) | Backport "HBASE-27811 Enable cache control for logs endpoint and set max age as 0" to branch-2 | Minor | . | +| [HBASE-28142](https://issues.apache.org/jira/browse/HBASE-28142) | Region Server Logs getting spammed with warning when storefile has no reader | Minor | . | +| [HBASE-28370](https://issues.apache.org/jira/browse/HBASE-28370) | Default user quotas are refreshing too frequently | Major | . | +| [HBASE-28398](https://issues.apache.org/jira/browse/HBASE-28398) | Make sure we close all the scanners in TestHRegion | Major | test | +| [HBASE-28313](https://issues.apache.org/jira/browse/HBASE-28313) | StorefileRefresherChore should not refresh readonly table | Major | regionserver | +| [HBASE-28342](https://issues.apache.org/jira/browse/HBASE-28342) | Decommissioned hosts should be rejected by the HMaster | Major | master | +| [HBASE-28359](https://issues.apache.org/jira/browse/HBASE-28359) | Improve quota RateLimiter synchronization | Major | . | +| [HBASE-28424](https://issues.apache.org/jira/browse/HBASE-28424) | Set correct Result to RegionActionResult for successful Put/Delete mutations | Major | . | +| [HBASE-28385](https://issues.apache.org/jira/browse/HBASE-28385) | Quota estimates are too optimistic for large scans | Major | . | +| [HBASE-28427](https://issues.apache.org/jira/browse/HBASE-28427) | FNFE related to 'master:store' when moving archived hfiles to global archived dir | Minor | master | +| [HBASE-28124](https://issues.apache.org/jira/browse/HBASE-28124) | Missing fields in Scan.toJSON | Major | . | +| [HBASE-28416](https://issues.apache.org/jira/browse/HBASE-28416) | Remove hbase-examples from hbase-assembly | Major | . | +| [HBASE-28453](https://issues.apache.org/jira/browse/HBASE-28453) | Support a middle ground between the Average and Fixed interval rate limiters | Major | . | +| [HBASE-28485](https://issues.apache.org/jira/browse/HBASE-28485) | Re-use ZstdDecompressCtx/ZstdCompressCtx for performance | Major | . | +| [HBASE-28498](https://issues.apache.org/jira/browse/HBASE-28498) | fix spotless:check errors | Major | . | +| [HBASE-28504](https://issues.apache.org/jira/browse/HBASE-28504) | Implement eviction logic for scanners in Rest APIs to prevent scanner leakage | Major | REST | +| [HBASE-28292](https://issues.apache.org/jira/browse/HBASE-28292) | Make Delay prefetch property to be dynamically configured | Major | . | +| [HBASE-28470](https://issues.apache.org/jira/browse/HBASE-28470) | Fix Typo in Java Method Comment | Trivial | Admin | +| [HBASE-28509](https://issues.apache.org/jira/browse/HBASE-28509) | ScanResumer.resume would perform unnecessary scan when close AsyncTableResultScanner | Major | asyncclient | +| [HBASE-28497](https://issues.apache.org/jira/browse/HBASE-28497) | Missing fields in Get.toJSON | Major | Client | +| [HBASE-28150](https://issues.apache.org/jira/browse/HBASE-28150) | CreateTableProcedure and DeleteTableProcedure should sleep a while before retrying | Major | master, proc-v2 | +| [HBASE-28529](https://issues.apache.org/jira/browse/HBASE-28529) | Use ZKClientConfig instead of system properties when setting zookeeper configurations | Major | Zookeeper | +| [HBASE-28255](https://issues.apache.org/jira/browse/HBASE-28255) | Correcting spelling errors or annotations with non-standard spelling | Minor | . | +| [HBASE-28517](https://issues.apache.org/jira/browse/HBASE-28517) | Make properties dynamically configured | Major | . | +| [HBASE-28518](https://issues.apache.org/jira/browse/HBASE-28518) | Allow specifying a filter for the REST multiget endpoint | Major | REST | +| [HBASE-28552](https://issues.apache.org/jira/browse/HBASE-28552) | Bump up bouncycastle dependency from 1.76 to 1.78 | Major | dependencies, security | + + +### BUG FIXES: + +| JIRA | Summary | Priority | Component | +|:---- |:---- | :--- |:---- | +| [HBASE-25166](https://issues.apache.org/jira/browse/HBASE-25166) | MobFileCompactionChore is closing the master's shared cluster connection | Major | master | +| [HBASE-26842](https://issues.apache.org/jira/browse/HBASE-26842) | TestSnapshotProcedure fails in branch-2 | Critical | proc-v2, snapshots | +| [HBASE-27092](https://issues.apache.org/jira/browse/HBASE-27092) | Regionserver table on Master UI is broken | Major | master | +| [HBASE-26977](https://issues.apache.org/jira/browse/HBASE-26977) | HMaster's ShutdownHook does not take effect, if tablesOnMaster is false | Major | master | +| [HBASE-27246](https://issues.apache.org/jira/browse/HBASE-27246) | RSGroupMappingScript#getRSGroup has thread safety problem | Major | rsgroup | +| [HBASE-27325](https://issues.apache.org/jira/browse/HBASE-27325) | the bulkload max call queue size can be update to a wrong value | Minor | IPC/RPC | +| [HBASE-25922](https://issues.apache.org/jira/browse/HBASE-25922) | Disabled sanity checks ignored on snapshot restore | Minor | conf, snapshots | +| [HBASE-27321](https://issues.apache.org/jira/browse/HBASE-27321) | The ReplicationLogCleaner is not thread safe but can be called from different threads at the same time | Critical | master, Replication | +| [HBASE-27152](https://issues.apache.org/jira/browse/HBASE-27152) | Under compaction mark may leak | Major | Compaction | +| [HBASE-27335](https://issues.apache.org/jira/browse/HBASE-27335) | HBase shell hang for a minute when quiting | Major | shell | +| [HBASE-27336](https://issues.apache.org/jira/browse/HBASE-27336) | The region visualizer shows 'undefined' region server | Major | master, UI | +| [HBASE-22939](https://issues.apache.org/jira/browse/HBASE-22939) | SpaceQuotas- Bulkload from different hdfs failed when space quotas are turned on. | Major | . | +| [HBASE-27353](https://issues.apache.org/jira/browse/HBASE-27353) | opentelemetry-context jar missing at runtime causes MR jobs to fail | Minor | . | +| [HBASE-27362](https://issues.apache.org/jira/browse/HBASE-27362) | Fix some tests hung by CompactSplit.requestCompactionInternal ignoring compactionsEnabled check | Major | Compaction | +| [HBASE-27352](https://issues.apache.org/jira/browse/HBASE-27352) | Quoted string argument with spaces passed from command line are propagated wrongly to the underlying java class | Minor | shell | +| [HBASE-27368](https://issues.apache.org/jira/browse/HBASE-27368) | Do not need to throw IllegalStateException when peer is not active in ReplicationSource.initialize | Major | regionserver, Replication |
[... 7418 lines stripped ...]
