blob: 117b9a5ff97979468b75995de6f40644023af1c3 [file] [view]
---
id: client-java-4.2.0
title: Client Java 4.2.0
sidebar_label: Client Java 4.2.0
---
- [fix][client] Add description method to ClientBuilder ([#24728](https://github.com/apache/pulsar/pull/24728))
- [fix][client] Avoid recycling the same ConcurrentBitSetRecyclable among different threads ([#24725](https://github.com/apache/pulsar/pull/24725))
- [fix][client] ControlledClusterFailover avoid unnecessary reconnection. ([#25178](https://github.com/apache/pulsar/pull/25178))
- [fix][client] Exclude io.prometheus:simpleclient_caffeine from client-side dependencies ([#24761](https://github.com/apache/pulsar/pull/24761))
- [fix][client] Fail messages immediately in ProducerImpl when in terminal state ([#25317](https://github.com/apache/pulsar/pull/25317))
- [fix][client] Fix async APIs to return failed futures on validation errors ([#25287](https://github.com/apache/pulsar/pull/25287))
- [fix][client] Fix AutoProduceBytesSchema.clone() method ([#25015](https://github.com/apache/pulsar/pull/25015))
- [fix][client] Fix deduplication for getPartitionedTopicMetadata to include method parameters ([#24965](https://github.com/apache/pulsar/pull/24965))
- [fix][client] Fix double recycling of the message in isValidConsumerEpoch method ([#25008](https://github.com/apache/pulsar/pull/25008))
- [fix][client] Fix getPendingQueueSize for PartitionedTopicProducerStatsRecorderImpl: avoid NPE and implement aggregation ([#24830](https://github.com/apache/pulsar/pull/24830))
- [fix][client] Fix invalid parameter type passed to Map.get in TopicsImpl.getListAsync method ([#25069](https://github.com/apache/pulsar/pull/25069))
- [fix][client] Fix lookup request semaphore not release problem ([#25038](https://github.com/apache/pulsar/pull/25038))
- [fix][client] Fix potential NPE in TypedMessageBuilderImpl ([#24691](https://github.com/apache/pulsar/pull/24691))
- [fix][client] Fix producer synchronous retry handling in failPendingMessages method ([#25207](https://github.com/apache/pulsar/pull/25207))
- [fix][client] Fix PulsarAdmin description check and add test ([#24734](https://github.com/apache/pulsar/pull/24734))
- [fix][client] Fix race condition between isDuplicate() and flushAsync() method in PersistentAcknowledgmentsGroupingTracker due to incorrect use Netty Recycler ([#25208](https://github.com/apache/pulsar/pull/25208))
- [fix][client] Fix receiver queue auto-scale without memory limit ([#24743](https://github.com/apache/pulsar/pull/24743))
- [fix][client] Fix stale Healthy state in SameAuthParamsLookupAutoClusterFailover causing flaky test ([#25388](https://github.com/apache/pulsar/pull/25388))
- [fix][client] Fix thread leak in reloadLookUp method which is used by ServiceUrlProvider ([#24794](https://github.com/apache/pulsar/pull/24794))
- [fix][client] Fix thread-safety of AutoProduceBytesSchema ([#25014](https://github.com/apache/pulsar/pull/25014))
- [fix][client] Make auto partitions update work for old brokers without PIP-344 ([#24822](https://github.com/apache/pulsar/pull/24822))
- [fix][client] PIP-84: Skip processing a message in the message listener if the consumer epoch is no longer valid ([#25007](https://github.com/apache/pulsar/pull/25007))
- [fix][client] Reduce logging in OAuth auth to fix parsing of Pulsar cli command output ([#25254](https://github.com/apache/pulsar/pull/25254))
- [fix][client] rollback TopicListWatcher retry behavior ([#24752](https://github.com/apache/pulsar/pull/24752))
- [fix][client] Send all chunkMessageIds to broker for redelivery ([#25229](https://github.com/apache/pulsar/pull/25229))
- [fix][client] Skip processing messages in the listener when the consumer has been closed ([#25006](https://github.com/apache/pulsar/pull/25006))
- [fix][client]Producer stuck or geo-replication stuck due to wrong value of message.numMessagesInBatch ([#25106](https://github.com/apache/pulsar/pull/25106))
- [fix][client]TopicListWatcher not closed when calling PatternMultiTopicsConsumerImpl.closeAsync() method ([#24698](https://github.com/apache/pulsar/pull/24698))
- [improve][client] PIP-407 Add newMessage with schema and transactions ([#23942](https://github.com/apache/pulsar/pull/23942))
- [improve][client] Add null checks for MessageAcknowledger methods to prevent NullPointerException ([#25036](https://github.com/apache/pulsar/pull/25036))
- [improve][client] Allow adding custom description to User-Agent header ([#24729](https://github.com/apache/pulsar/pull/24729))
- [improve][client] allow override of default global jsr310 conversion ([#24311](https://github.com/apache/pulsar/pull/24311))
- [improve][client] Deduplicate getTopicsUnderNamespace in BinaryProtoLookupService ([#24962](https://github.com/apache/pulsar/pull/24962))
- [improve][client] Deduplicate in-progress lookup requests also for HttpLookupService ([#25017](https://github.com/apache/pulsar/pull/25017))
- [improve][client] Enable configurable preemptive OAuth2 token refresh ([#25363](https://github.com/apache/pulsar/pull/25363))
- [improve][client] Make authorization server metadata path configurable in AuthenticationOAuth2 ([#25052](https://github.com/apache/pulsar/pull/25052))
- [improve][client] PIP-420: Update the schema ID format ([#24798](https://github.com/apache/pulsar/pull/24798))
- [improve][client] Support protobuf v4 schema compatibility ([#25261](https://github.com/apache/pulsar/pull/25261))
- [improve][client] Test no exception could be thrown for invalid epoch in message ([#25013](https://github.com/apache/pulsar/pull/25013))
- [improve][client]Add null check for Pulsar client clock configuration ([#24848](https://github.com/apache/pulsar/pull/24848))
- [improve][client]PIP-436:Add decryptFailListener to Consumer ([#24702](https://github.com/apache/pulsar/pull/24702))
- [improve][client]Reduce unnecessary getPartitionedTopicMetadata requests when using retry and DLQ topics. ([#25172](https://github.com/apache/pulsar/pull/25172))
- [cleanup][client] Remove unnecessary pause/resume logic from MultiTopicsConsumerImpl and cleanup putIfAbsent logic ([#25009](https://github.com/apache/pulsar/pull/25009))
- [feat][client] Implement PIP-234 for sharing thread pools and DNS resolver/cache across multiple Pulsar Client instances ([#24790](https://github.com/apache/pulsar/pull/24790))
- [feat][client] oauth2 trustcerts file and timeouts ([#24944](https://github.com/apache/pulsar/pull/24944))
- [feat][client] PIP-234: Support shared resources in PulsarAdmin to reduce thread usage ([#24893](https://github.com/apache/pulsar/pull/24893))
- [feat][client] PIP-446: Support Native OpenTelemetry Tracing in Pulsar Java Client ([#24873](https://github.com/apache/pulsar/pull/24873))
- [fix] Handle TLS close_notify to avoid SslClosedEngineException: SSLEngine closed already ([#24986](https://github.com/apache/pulsar/pull/24986))