Apache Pulsar 3.0.9
2025-01-20
Library updates
- [fix][sec] Bump commons-io version to 2.18.0 (#23684)
- [fix][sec] Mitigate CVE-2024-53990 by disabling AsyncHttpClient CookieStore (#23725)
- [fix][sec] Upgrade async-http-client to 2.12.4 to address CVE-2024-53990 (#23732)
- [fix][sec] Upgrade golang.org/x/crypto from 0.21.0 to 0.31.0 in pulsar-function-go (#23743)
- [improve] Upgrade lombok to 1.18.36 (#23752)
- [improve] Upgrade to Netty 4.1.116.Final and io_uring to 0.0.26.Final (#23813)
Broker
- [fix][broker] Msg delivery is stuck due to items in the collection recentlyJoinedConsumers are out-of-order (#23795)
- [fix][broker] Add consumer name for subscription stats (#23671)
- [fix][broker] Catch exception for entry payload interceptor processor (#23683)
- [fix][broker] Continue using the next provider for authentication if one fails (#23797)
- [fix][broker] Fix config replicationStartAt does not work when set it to earliest (#23719)
- [fix][broker] Fix enableReplicatedSubscriptions (#23781)
- [fix][broker] Fix items in dispatcher.recentlyJoinedConsumers are out-of-order, which may cause a delivery stuck (#23802)
- [fix][broker] Remove failed OpAddEntry from pendingAddEntries (#23817)
- [fix][broker] Skip to persist cursor info if it failed by cursor closed (#23615)
- [fix][broker] fix NPE when calculating a topic's backlogQuota (#23720)
- [fix][admin] Fix exception loss in getMessageId method (#23766)
- [fix][admin] Fix exception thrown in getMessageId method (#23784)
- [fix][admin] Listen partitioned topic creation event (#23680)
- [improve][admin] Opt-out of topic-existence check (#23709)
- [improve][log] Print ZK path if write to ZK fails due to data being too large to persist (#23652)
- [fix][ml] Topic load timeout due to ml data ledger future never finishes (#23772)
Client
- [Fix][Client] Fix pending message not complete when closeAsync (#23761)
- [fix][client] Cannot access message data inside ProducerInterceptor#onSendAcknowledgement (#23791)
- [fix][client] Fix enableRetry for consumers using legacy topic naming where cluster name is included (#23753)
- [fix][client] Fix memory leak when publishing encountered a corner case error (#23738)
- [fix][client] Fix wrong start message id when it's a chunked message id (#23713)
- [fix][client] Make DeadLetterPolicy & KeySharedPolicy serializable (#23718)
- [fix][client] Prevent retry topic and dead letter topic producer leaks when sending of message fails (#23824)
- [fix][client][branch-3.0] Fix compatibility between kerberos and tls (#23801)
- [improve][client] Make replicateSubscriptionState nullable (#23757)
- [fix][doc] Refine ClientBuilder#memoryLimit and ConsumerBuilder#autoScaledReceiverQueueSizeEnabled javadoc (#23687)
Pulsar IO and Pulsar Functions
- [improve][fn] Improve closing of producers in Pulsar Functions ProducerCache invalidation (#23734)
- [improve][fn] Improve implementation for maxPendingAsyncRequests async concurrency limit when return type is CompletableFuture<Void> (#23708)
- [improve][io] Bump io.lettuce:lettuce-core from 5.0.2.RELEASE to 6.5.1.RELEASE in /pulsar-io/redis (#23685)
- [fix][fn][branch-3.0] Fix pulsar-function-go compilation
Others
- [fix][common] TopicName: Throw IllegalArgumentException if localName is whitespace only (#23691)
Tests & CI
- [fix][test] Remove useless test code (#23823)
- [fix][test]: Flaky-test: GetPartitionMetadataMultiBrokerTest.testCompatibilityDifferentBrokersForNonPersistentTopic (#23666)
For the complete list, check the full changelog.