You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by lh...@apache.org on 2026/06/08 18:47:42 UTC

(pulsar-site) 04/04: Add release notes for Pulsar 4.2.2

This is an automated email from the ASF dual-hosted git repository.

lhotari pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git

commit 8f360a960292401cad81efc279206c6dbb89090c
Author: Lari Hotari <lh...@users.noreply.github.com>
AuthorDate: Mon Jun 8 21:38:16 2026 +0300

    Add release notes for Pulsar 4.2.2
---
 data/release-java.js                         |   9 ++-
 data/release-pulsar.js                       |  11 ++-
 release-notes/versioned/client-java-4.2.2.md |  23 ++++++
 release-notes/versioned/pulsar-4.2.2.md      | 111 +++++++++++++++++++++++++++
 releases.json                                |   1 +
 5 files changed, 153 insertions(+), 2 deletions(-)

diff --git a/data/release-java.js b/data/release-java.js
index db2cee50099..02bfb58f738 100644
--- a/data/release-java.js
+++ b/data/release-java.js
@@ -1,10 +1,17 @@
 module.exports = [
+  {
+    "tagName": "v4.2.2",
+    "vtag": "4.2.x",
+    "releaseNotes": "/release-notes/versioned/client-java-4.2.2/",
+    "doc": "/docs/4.2.x/client-libraries-java",
+    "version": "v4.2.x"
+  },
   {
     "tagName": "v4.2.1",
     "vtag": "4.2.x",
     "releaseNotes": "/release-notes/versioned/client-java-4.2.1/",
     "doc": "/docs/4.2.x/client-libraries-java",
-    "version": "v4.2.x"
+    "version": ""
   },
   {
     "tagName": "v4.2.0",
diff --git a/data/release-pulsar.js b/data/release-pulsar.js
index 94cbf3a8dfb..8d38677adc5 100644
--- a/data/release-pulsar.js
+++ b/data/release-pulsar.js
@@ -1,4 +1,13 @@
 module.exports = [
+  {
+    "author": "lhotari",
+    "tagName": "v4.2.2",
+    "publishedAt": "2026-06-08T18:16:45Z",
+    "vtag": "4.2.x",
+    "releaseNotes": "/release-notes/versioned/pulsar-4.2.2/",
+    "doc": "/docs/4.2.x",
+    "version": "v4.2.x"
+  },
   {
     "author": "lhotari",
     "tagName": "v4.2.1",
@@ -6,7 +15,7 @@ module.exports = [
     "vtag": "4.2.x",
     "releaseNotes": "/release-notes/versioned/pulsar-4.2.1/",
     "doc": "/docs/4.2.x",
-    "version": "v4.2.x"
+    "version": ""
   },
   {
     "author": "lhotari",
diff --git a/release-notes/versioned/client-java-4.2.2.md b/release-notes/versioned/client-java-4.2.2.md
new file mode 100644
index 00000000000..3795d1b2c40
--- /dev/null
+++ b/release-notes/versioned/client-java-4.2.2.md
@@ -0,0 +1,23 @@
+---
+id: client-java-4.2.2
+title: Client Java 4.2.2
+sidebar_label: Client Java 4.2.2
+---
+
+- [fix][sec] Upgrade Netty to 4.1.135.Final to address several CVEs ([#25918](https://github.com/apache/pulsar/pull/25918))
+- [fix][sec] Bump org.asynchttpclient:async-http-client from 2.14.5 to 2.15.0 ([#25818](https://github.com/apache/pulsar/pull/25818))
+- [improve][misc] Upgrade Caffeine to 3.2.4 ([#25663](https://github.com/apache/pulsar/pull/25663))
+- [fix][client] Apply Avro logical type conversions when decoding schema without classloader ([#25759](https://github.com/apache/pulsar/pull/25759))
+- [fix][client] Clean up unacked messages when unsubscribing a topic with ack timeout backoff ([#25916](https://github.com/apache/pulsar/pull/25916))
+- [fix][client] Fix failed to close consumer because of the error: param memorySize is a negative value ([#25805](https://github.com/apache/pulsar/pull/25805))
+- [fix][client] Make ClientBuilder serializable ([#25730](https://github.com/apache/pulsar/pull/25730)) ([#25739](https://github.com/apache/pulsar/pull/25739))
+- [fix][client] Match logical topic when removing unacked messages ([#25921](https://github.com/apache/pulsar/pull/25921))
+- [fix][client] Preserve equals in FieldParser map values ([#25907](https://github.com/apache/pulsar/pull/25907))
+- [fix][client] Prevent duplicate ServiceUrlProvider initialization ([#25899](https://github.com/apache/pulsar/pull/25899))
+- [fix][client] Reset higher-index states on recovery in SameAuthParamsLookupAutoClusterFailover ([#25826](https://github.com/apache/pulsar/pull/25826))
+- [fix][client] Stabilize scaleReceiverQueueHint against concurrent enqueue/take ([#25578](https://github.com/apache/pulsar/pull/25578))
+- [fix][client]Broker-side producer handle leak if closes a producer which state is regitering schema ([#25725](https://github.com/apache/pulsar/pull/25725))
+- [improve][client] Best-effort retry for individual/batch-index acks on send failure when ackReceiptEnabled=false ([#25525](https://github.com/apache/pulsar/pull/25525))
+- [improve][client] Clean up unacked message tracker when topics are removed in multi-topic consumers ([#25923](https://github.com/apache/pulsar/pull/25923))
+- [improve][client] Implement tls_client_auth for AuthenticationOAuth2 ([#25538](https://github.com/apache/pulsar/pull/25538))
+- [improve][client] In cases where there is a risk of message loss, adjust the log level to error ([#25854](https://github.com/apache/pulsar/pull/25854))
diff --git a/release-notes/versioned/pulsar-4.2.2.md b/release-notes/versioned/pulsar-4.2.2.md
new file mode 100644
index 00000000000..768e2337c0d
--- /dev/null
+++ b/release-notes/versioned/pulsar-4.2.2.md
@@ -0,0 +1,111 @@
+---
+id: pulsar-4.2.2
+title: Apache Pulsar 4.2.2
+sidebar_label: Apache Pulsar 4.2.2
+---
+
+#### 2026-06-08
+
+### Library updates
+
+- [fix][sec] Bump org.asynchttpclient:async-http-client from 2.14.5 to 2.15.0 ([#25818](https://github.com/apache/pulsar/pull/25818))
+- [fix][sec] Upgrade commons-configuration2 to 2.15.0 to address CVE-2026-45205 ([#25844](https://github.com/apache/pulsar/pull/25844))
+- [fix][sec] Upgrade Netty to 4.1.133.Final to address CVEs ([#25670](https://github.com/apache/pulsar/pull/25670))
+- [improve][misc] Upgrade Netty to 4.1.134 ([#25870](https://github.com/apache/pulsar/pull/25870))
+- [fix][sec] Upgrade Netty to 4.1.135.Final to address several CVEs ([#25918](https://github.com/apache/pulsar/pull/25918))
+- [fix][sec] Upgrade thrift to 0.23.0 to address CVE-2026-43869 ([#25744](https://github.com/apache/pulsar/pull/25744))
+- [fix][sec] Upgrade vert.x to 4.5.25 to address CVE-2026-6860 ([#25737](https://github.com/apache/pulsar/pull/25737))
+- [fix][sec] Upgrade vertx to 4.5.27 to address CVE-2026-6860 ([#25745](https://github.com/apache/pulsar/pull/25745))
+- [improve][misc] Upgrade vert.x to 4.5.28 ([#25924](https://github.com/apache/pulsar/pull/25924))
+- [improve][build] Remove kotlin-stdlib override; upgrade okhttp3 5.3.2 and okio 3.17.0 ([#25855](https://github.com/apache/pulsar/pull/25855))
+- [improve][build] Upgrade org.apache.kerby:kerb-simplekdc from 1.1.1 to 2.1.1 ([#25785](https://github.com/apache/pulsar/pull/25785))
+- [improve][misc] Upgrade Jetty to 12.1.9 ([#25752](https://github.com/apache/pulsar/pull/25752))
+- [improve][misc] Upgrade Jetty to 12.1.10 ([#25943](https://github.com/apache/pulsar/pull/25943))
+- [improve][misc] Upgrade Caffeine to 3.2.4 ([#25663](https://github.com/apache/pulsar/pull/25663))
+
+### Broker
+
+- [fix][broker] Clean up orphan ledger on concurrent initial schema creation in BookkeeperSchemaStorage ([#25514](https://github.com/apache/pulsar/pull/25514))
+- [fix][broker] Close pending acks cleanup gap in BacklogQuotaManager ([#25624](https://github.com/apache/pulsar/pull/25624))
+- [fix][broker] ConcurrentLongHashMap throw ArrayIndexOutOfBoundsException ([#25644](https://github.com/apache/pulsar/pull/25644))
+- [fix][broker] Correct two race conditions in the tracker code and logic bug in InMemoryDelayedDeliveryTracker that failed with NoSuchElementException ([#25681](https://github.com/apache/pulsar/pull/25681))
+- [fix][broker] Decrement unacked counter when removeAllUpTo removes pending acks ([#25581](https://github.com/apache/pulsar/pull/25581))
+- [fix][broker] Fix compaction cursor reset may lose mark-delete properties ([#25862](https://github.com/apache/pulsar/pull/25862))
+- [fix][broker] Fix ManagedLedgerImpl.advanceCursorsIfNecessary() method may lose non-durable cursor properties in race condition ([#25796](https://github.com/apache/pulsar/pull/25796))
+- [fix][broker] Fix non-batched null-value messages not removed during topic compaction ([#25817](https://github.com/apache/pulsar/pull/25817))
+- [fix][broker] Fix PersistentMessageExpiryMonitor findEntryComplete() method may lose mark-delete properties in race condition ([#25803](https://github.com/apache/pulsar/pull/25803))
+- [fix][broker] Fix precision loss in DataSketchesSummaryLogger by replacing LongAdder with DoubleAdder for sum accumulation ([#25594](https://github.com/apache/pulsar/pull/25594))
+- [fix][broker] Fix PulsarService.closeAsync where Condition.signalAll was called without holding a lock ([#25777](https://github.com/apache/pulsar/pull/25777))
+- [fix][broker] Fix race in pending acks removal in redeliverUnacknowledgedMessages ([#25589](https://github.com/apache/pulsar/pull/25589))
+- [fix][broker] Fix stuck chunks in SharedConsumerAssignor permit tracking ([#25620](https://github.com/apache/pulsar/pull/25620))
+- [fix][broker] Merge broker offload extra configurations ([#25736](https://github.com/apache/pulsar/pull/25736))
+- [fix][broker] Move pending acks cleanup to selected mark-delete callbacks ([#25592](https://github.com/apache/pulsar/pull/25592))
+- [fix][broker] Race condition causes perpetual backlog on internal topics ([#25572](https://github.com/apache/pulsar/pull/25572))
+- [fix][broker] Skip backlog-quota eviction on fenced/closing topics ([#25684](https://github.com/apache/pulsar/pull/25684))
+- [fix][broker] Use effective offload policies for extra configs ([#25781](https://github.com/apache/pulsar/pull/25781))
+- [fix][broker] Wait for orphan schema ledger cleanup before retry ([#25579](https://github.com/apache/pulsar/pull/25579))
+- [fix][broker][fix][broker]Replication stats is empty when the cluster is the target cluster of a one-way replication ([#25583](https://github.com/apache/pulsar/pull/25583))
+- [fix][broker]Replication is stuck because failed to read entries ([#25625](https://github.com/apache/pulsar/pull/25625))
+- [fix][bk] Fix NPE in IsolatedBookieEnsemblePlacementPolicy when policy class does not match ([#25825](https://github.com/apache/pulsar/pull/25825))
+- [fix][meta] Fix PulsarZooKeeperClient async addWatch callback retry behavior ([#25913](https://github.com/apache/pulsar/pull/25913))
+- [fix][meta] Fix ZooKeeper session reconnect race condition in PulsarZooKeeperClient.clientCreator ([#25910](https://github.com/apache/pulsar/pull/25910))
+- [improve][broker] optimize namespaceBundle validation to fix single-thread 100% CPU during unloading entire namespaces ([#25626](https://github.com/apache/pulsar/pull/25626))
+- [improve][broker] Prevent stale replicator pending reads after termination ([#25767](https://github.com/apache/pulsar/pull/25767))
+- [improve][offload] Coalesce automatic offload triggers to reduce retry loops and ledger scans ([#25793](https://github.com/apache/pulsar/pull/25793))
+- [fix][broker][branch-4.2] URL-encode sub-name in Txn pending-ack topic [#25727](https://github.com/apache/pulsar/pull/25727) ([#25728](https://github.com/apache/pulsar/pull/25728))
+
+### Client
+
+- [fix][client] Apply Avro logical type conversions when decoding schema without classloader ([#25759](https://github.com/apache/pulsar/pull/25759))
+- [fix][client] Clean up unacked messages when unsubscribing a topic with ack timeout backoff ([#25916](https://github.com/apache/pulsar/pull/25916))
+- [fix][client] Fix failed to close consumer because of the error: param memorySize is a negative value ([#25805](https://github.com/apache/pulsar/pull/25805))
+- [fix][client] Make ClientBuilder serializable ([#25730](https://github.com/apache/pulsar/pull/25730)) ([#25739](https://github.com/apache/pulsar/pull/25739))
+- [fix][client] Match logical topic when removing unacked messages ([#25921](https://github.com/apache/pulsar/pull/25921))
+- [fix][client] Preserve equals in FieldParser map values ([#25907](https://github.com/apache/pulsar/pull/25907))
+- [fix][client] Prevent duplicate ServiceUrlProvider initialization ([#25899](https://github.com/apache/pulsar/pull/25899))
+- [fix][client] Reset higher-index states on recovery in SameAuthParamsLookupAutoClusterFailover ([#25826](https://github.com/apache/pulsar/pull/25826))
+- [fix][client] Stabilize scaleReceiverQueueHint against concurrent enqueue/take ([#25578](https://github.com/apache/pulsar/pull/25578))
+- [fix][client]Broker-side producer handle leak if closes a producer which state is regitering schema ([#25725](https://github.com/apache/pulsar/pull/25725))
+- [improve][client] Best-effort retry for individual/batch-index acks on send failure when ackReceiptEnabled=false ([#25525](https://github.com/apache/pulsar/pull/25525))
+- [improve][client] Clean up unacked message tracker when topics are removed in multi-topic consumers ([#25923](https://github.com/apache/pulsar/pull/25923))
+- [improve][client] Implement tls_client_auth for AuthenticationOAuth2 ([#25538](https://github.com/apache/pulsar/pull/25538))
+- [improve][client] In cases where there is a risk of message loss, adjust the log level to error ([#25854](https://github.com/apache/pulsar/pull/25854))
+
+### Pulsar IO and Pulsar Functions
+
+- [fix][fn] Fix functions update issue where artifact is provided as a http url ([#25840](https://github.com/apache/pulsar/pull/25840))
+- [fix][fn] Fix Go function runtime to continue after user exceptions and add neg-ack tests ([#25867](https://github.com/apache/pulsar/pull/25867))
+- [fix][fn] Fix orphan exclusive producer on creation timeout in WorkerUtils.createExclusiveProducerWithRetry ([#25942](https://github.com/apache/pulsar/pull/25942))
+- [improve][fn] Avoid gRPC timeout when getting status of a dead process runtime ([#25819](https://github.com/apache/pulsar/pull/25819))
+- [improve][fn] make built-in connector reload incremental ([#25773](https://github.com/apache/pulsar/pull/25773))
+- [improve][fn] make built-in functions reload incremental ([#25868](https://github.com/apache/pulsar/pull/25868))
+- [refactor][fn] Use Map instead of TreeMap for connector/function API types ([#25790](https://github.com/apache/pulsar/pull/25790))
+- [improve][functions] Allow customizing Kubernetes service domain suffix in Function Worker ([#25872](https://github.com/apache/pulsar/pull/25872))
+
+### Others
+
+- [fix][proxy] Avoid intermittent 502 when admin proxy follows a broker redirect for a request with a body ([#25919](https://github.com/apache/pulsar/pull/25919))
+- [fix][proxy] Close channel on connection failure ([#25770](https://github.com/apache/pulsar/pull/25770))
+- [improve][cli] Add client side looping in "pulsar-admin topics analyze-backlog" cli to avoid potential HTTP call timeout ([#25126](https://github.com/apache/pulsar/pull/25126))
+
+### Tests & CI
+
+- [fix][test] Add timeout to initial receives in ResendRequestTest.testSharedSingleAckedPartitionedTopic ([#25828](https://github.com/apache/pulsar/pull/25828))
+- [fix][test] Fix flaky ExtensibleLoadManagerImplTest.testLoadBalancerServiceUnitTableViewSyncer ([#25596](https://github.com/apache/pulsar/pull/25596))
+- [fix][test] Fix flaky OneWayReplicatorDeduplicationTest.testDeduplication ([#25679](https://github.com/apache/pulsar/pull/25679))
+- [fix][test] Fix flaky ProducerCleanupTest timer cleanup ([#25864](https://github.com/apache/pulsar/pull/25864))
+- [fix][test] Fix flaky PulsarFunctionTlsTest.testFunctionsCreation() test ([#25889](https://github.com/apache/pulsar/pull/25889))
+- [fix][test] Fix flaky ResendRequestTest.testSharedSingleAckedPartitionedTopic() test ([#25852](https://github.com/apache/pulsar/pull/25852))
+- [fix][test] Fix flaky SameAuthParamsLookupAutoClusterFailoverTest.testAutoClusterFailover() test ([#25892](https://github.com/apache/pulsar/pull/25892))
+- [fix][test] Fix flaky testGetExcludedBookiesWithIsolationGroups ([#25640](https://github.com/apache/pulsar/pull/25640))
+- [fix][test] Fix flaky testMsgDropStat in NonPersistentTopicTest ([#25426](https://github.com/apache/pulsar/pull/25426))
+- [fix][test] Make NamespacesTest.cleanupAfterMethod tolerant of transient infra failures ([#25641](https://github.com/apache/pulsar/pull/25641))
+- [fix][test] Reduce flakiness in testLoadBalancerServiceUnitTableViewSyncer ([#25638](https://github.com/apache/pulsar/pull/25638))
+- [fix][test] Stabilize testSecondaryIsolationGroupsBookiesNegative() test ([#25900](https://github.com/apache/pulsar/pull/25900))
+- [fix][test] Stabilize WebService rate limiting test ([#25866](https://github.com/apache/pulsar/pull/25866))
+- [improve][test] Set diskUsageThreshold to 0.999 for tests to effectively disable the check ([#25677](https://github.com/apache/pulsar/pull/25677))
+- [fix][build][branch-4.2] Fix checkstyle issue after a previous cherry-pick
+- [fix][build][branch-4.2] Fix compilation issue after backporting
+- [fix][test][branch-4.2] Fix PersistentMessageExpiryMonitorTest
+
+For the complete list, check the [full changelog](https://github.com/apache/pulsar/compare/v4.2.1...v4.2.2).
diff --git a/releases.json b/releases.json
index ffc3e6af288..494c1e77251 100644
--- a/releases.json
+++ b/releases.json
@@ -1,4 +1,5 @@
 [
+  "4.2.2",
   "4.2.1",
   "4.2.0",
   "4.1.3",