Release 4.14.6
·
1083 commits
to master
since this release
Release 4.14.6 includes multiple bug fixes and some dependencies CVE fixes.
Apache BookKeeper users are encouraged to upgrade to 4.14.6.
The technical details of this release are summarized below.
Highlights
Bugs
- Fix memory leak when reading entry but the connection disconnected. PR #3528
- When call openLedgerOp, make the timeout ex is a separate error code PR #3562
- Apply recycle logic during add entry creation but ledger close to LedgerHandleAdv PR #3621
- Fix autoRecovery memory leak. PR #3361
- Fix potential memory leak. PR #3530
- Fix the V2 AddRequest object leak issue PR #3323
- Fix ByteBuf memory leak problem when setExplicitLac PR #3617
- Fix the problem that the abnormal file causes the bookie GC fail PR #3611
- Fix the deadlock when only using io thread to handle request PR #3480
- Fix memory leak when closeRecovered,failed on clearing newEnsemblesFromRecovery PR #3672
- Fix memory leak when operating ledger metadata PR #3662
- LedgerHandle: do not complete metadata operation on the ZookKeeper/Metadata callback thread PR #3516
- Ledger replicate supports throttle PR #2778
- CheckAllLedgers in Auditor supports read throttle PR #2973
- Rename success with writableResult and update final writableResult about wait writeSet PR #3505
- LedgerFragment check and results keep order PR #3504
- Improve the throttle function PR #2991
- Fix close ledgerAuditorManager repeatedly PR #3503
- AutoRecovery - Do not call shutdown() on the main ZookKeeper client thread PR #3487
- WriteLacResponse should be processed in the same thread as other requests for the same ledgerId PR #3452
- Shutdown ReplicationWorker and Auditor on non-recoverable ZK error PR #3374
- Enhance future sync wait. PR #3336
- Pre break loop when self create layoutZNode succeed. PR #3335
- Fix the PendingAddOp is not recycled when LedgerHandler closed PR #3321
- Fix autorecovery does not process underreplicated empty ledgers PR #3239
- Fix RegionAwareEnsemblePlacementPolicy update rack info problem. PR #3666
- Fix bug where checkAllLedgers gets stuck when read throttling is enabled PR #3214
- Fix checkAllLedgersDuration compute PR #2970
- Zk client config update and bugfix for ZKMetadataClientDriver PR #2958
- Make sure the LedgerHandle close callback can be completed when encounter exception PR #2913
- Make
jvm_memory_direct_bytes_used
metrics compatible with jdk8. PR #3677 - Reorder the sequence of the bookkeeper server shutdown so that there are no read/ write ops while shutting down the bookie PR #2888
- Fix readlogmetadata failed bug and export entrylog file usage to output PR #2349
- MinorCompactionInterval should be greater than gcWaitTime PR #2116
- Skipping placementPolicyCheck when ledger replication disabled PR #3561
- Skip replicasCheck when replication disabled PR #3563
- Fix GetBookieInfo failed event stats PR #3622
- Add journal file path that caused failure in multi-journal config PR #3634
- Include bkperf into bk all package PR #3632
- Fix maven javadoc generate issues PR #3615
- Switch to rely on SslEngine for Hostname Verification PR #3310
- Simplified No network topology script is found default log stack output PR #3496
- Fix jvm_memory_direct_bytes_used metrics when using jdk11+ PR #3252
- Fix the 3144 revert issue PR #3283
- Avoid init WriteSet when waitForWriteSetMs < 0. PR #3325
- Tuning PendingReadOp.java seq PR #3330
- Optimize log for failed to write entry PR #3463
- Reduce unnecessary loop in removeIf if map is empty PR #3512
- Deduplicate error log for SSLException PR #3320
- Fix underReplicatedLedgerTotalSize calculate problem. PR #3337
- Fix wrong ledger id parse radix for index relocation file in IndexPersistenceMgr PR #2944
- Fix bookie CI test not run PR #3367
- Update doc about flushInterval config PR #3601
- Show content of map PR #3538
- Add example for multiple server list in metadataServiceUri configuration PR #3580
- Replace sleep with await to avoid flaky test in SlowBookieTest PR #3581
- Add javadoc comments for test classes PR #3587
- Correct link class name PR #3594
- Fix typo in bk_server.conf PR #3574
- Fix flaky test testAutoRecoverySessionLoss PR #3576
- Fix flaky tests in AuditorReplicasCheckTest PR #3551
- Fix the tls failed test PR #3448
- Backport BookieBackpressureForV2Test to branch-4.14 PR #3443
- Fix Flaky-test: testBookieContinueWritingIfMultipleLedgersPresent PR #3421
- BookieAutoRecoveryTest.testEmptyLedgerLosesQuorumEventually fix flaky test, ensure that the Auditor is alive PR #3149
- Close journal channel in testJunkEndedJournal PR #3307
- Fix stream storage flaky tests, statelib test times out PR #2883
- Fix flaky AutoRecoveryMainTest PR #2881
- Support apple m1 build PR #3175
- Refactor ByteBuf release method in module distributedlog-core/distributedlog-protocol PR #3693
- Refactor ByteBuf release method in module distributedlog-core PR #3691
- Refactor ByteBuf release method in tools PR #3687
- Refactor ByteBuf release method in stream/statelib PR #3689
- Refactor ByteBuf release method in DefaultEntryLogger PR #3673
- Refactor ByteBuf release method in InterleavedLedgerStorage PR #3674
Improvements
- Bring back deleteRange for RocksDB to improve location delete performance PR #3653
- Consolidate Netty channel flushes to mitigate syscall overhead PR #3383
- Using a separate thread pool to execute openWithMetadata PR #3548
- Replace unsafe NoEntryException with IOException PR #2909
- Update default value of allocatorPoolingConcurrency PR #3001
- Apply the backpressure changes on the V2 requests PR #3324
- LedgerOpenOp: Do not call blocking close() in the callback PR #3513
Metrics changes
- Add rocksDB read latency and read from storage latency for entry reading PR #3647
- Add latency stats for entry location index lookup so that possible RocksDB bottleneck can be detected PR #3444
- Add stats for throttled-write PR #3102
- Add writeThreadQueuedLatency PR #3363
Dependency updates
- Upgrade docker image version to fix CVEs PR #3640
- Upgrade dependencies for CVE-2022-3171 and CVE-2022-42003 PR #3579
- Bump jcommander from 1.78 to 1.82 PR #3476
- Upgrade hadoop version to 3.2.4 PR #3485
- Upgrade Jetty to 9.4.48.v20220622 to get rid of CVE-2022-2047 PR #3404
Details
https://github.com/apache/bookkeeper/pulls?q=is%3Apr+label%3Arelease%2F4.14.6+is%3Aclosed