| --- |
| id: client-java-3.0.0 |
| title: Client Java 3.0.0 |
| sidebar_label: Client Java 3.0.0 |
| --- |
| |
| - PIP-224: Add getLastMessageIds API by @BewareMyPower in [#20040](https://github.com/apache/pulsar/pull/20040) |
| - Refactor client version format by @RobertIndie in [#19643](https://github.com/apache/pulsar/pull/19643) |
| - Fix authentication not update after changing the serviceUrl by @hangc0276 in [#19510](https://github.com/apache/pulsar/pull/19510) |
| - Fix load the trust store file by @nodece in [#19483](https://github.com/apache/pulsar/pull/19483) |
| - PIP-229: Add a common interface to get fields of MessageIdData by @BewareMyPower in [#19414](https://github.com/apache/pulsar/pull/19414) |
| - Fix async method composition in admin client's NamespacesImpl by @lhotari in [#19397](https://github.com/apache/pulsar/pull/19397) |
| - Fix async completion in ConsumerImpl#processPossibleToDLQ by @lhotari in [#19392](https://github.com/apache/pulsar/pull/19392) |
| - Change default threads from 1 to available processors by @codelipenghui in [#19059](https://github.com/apache/pulsar/pull/19059) |
| - Retry letter producer respect auto schema by @tisonkun in [#19051](https://github.com/apache/pulsar/pull/19051) |
| - Add unified newTableView method in PulsarClient by @yuruguo in [#19048](https://github.com/apache/pulsar/pull/19048) |
| - Check topic pattern when creating consumer by @yuruguo in [#19029](https://github.com/apache/pulsar/pull/19029) |
| - Prevent DNS reverse lookup when physical address is an IP address by @lhotari in [#19028](https://github.com/apache/pulsar/pull/19028) |
| - ConsumerBuilder.java comments by @mendonk in [#18706](https://github.com/apache/pulsar/pull/18706) |
| - For exclusive subscriptions, if two consumers are created repeatedly, the second consumer will block by @lordcheng10 in [#18633](https://github.com/apache/pulsar/pull/18633) |
| - Move acknowledge APIs to another interface and improve docs by @BewareMyPower in [#18519](https://github.com/apache/pulsar/pull/18519) |
| - Avoid allocating unused buffer when receiving chunk message by @RobertIndie in [#18511](https://github.com/apache/pulsar/pull/18511) |
| - Fix multi-topic consumer stuck after redeliver messages by @poorbarcode in [#18491](https://github.com/apache/pulsar/pull/18491) |
| - Fix the note of seek in the consumer by @RobertIndie in [#18476](https://github.com/apache/pulsar/pull/18476) |
| - Fix failover/exclusive consumer with batch cumulate ack issue. by @Technoboy- in [#18454](https://github.com/apache/pulsar/pull/18454) |
| - Change the get lastMessageId to debug level by @zymap in [#18421](https://github.com/apache/pulsar/pull/18421) |
| - Fix the Windows absolute path not recognized in auth param string by @BewareMyPower in [#18403](https://github.com/apache/pulsar/pull/18403) |
| - Fix exception when calling loadConf on a ConsumerBuilder that has a KeySharedPolicy by @cbornet in [#18345](https://github.com/apache/pulsar/pull/18345) |
| - Support LocalDateTime Conversion by @coderzc in [#18334](https://github.com/apache/pulsar/pull/18334) |
| - Reduce duplicate code in ConsumerBuilderImpl by @Pomelongan in [#18325](https://github.com/apache/pulsar/pull/18325) |
| - PIP-218: Consumer batchReceive() single partition every receive by @congbobo184 in [#18316](https://github.com/apache/pulsar/pull/18316) |
| - Fix `IllegalThreadStateException` when using newThread in `ExecutorProvider.ExtendedThreadFactory` by @coderzc in [#18268](https://github.com/apache/pulsar/pull/18268) |
| - Fix pendingLookupRequestSemaphore leak when Ser… by @Shoothzj in [#18219](https://github.com/apache/pulsar/pull/18219) |
| - When namespace is deleted, the client is constantly reconnecting by @poorbarcode in [#18194](https://github.com/apache/pulsar/pull/18194) |
| - Remove unused check for topics isEmpty by @AnonHxy in [#18185](https://github.com/apache/pulsar/pull/18185) |
| - Remove useless locks in batch receiving by @shibd in [#18005](https://github.com/apache/pulsar/pull/18005) |
| - When the compressed message size exceeds maxMessageSize, the information in the InvalidMessageException may be incorrect by @lordcheng10 in [#17910](https://github.com/apache/pulsar/pull/17910) |
| - Fix deadlock when sending chunked messages with BlockIFQueueFull enabled by @RobertIndie in [#17795](https://github.com/apache/pulsar/pull/17795) |
| - Optimize the ack/send future in TransactionImpl by @liangyepianzhou in [#17777](https://github.com/apache/pulsar/pull/17777) |
| - Remove redundant pending messages information while printing the producer stats by @codertmy in [#17671](https://github.com/apache/pulsar/pull/17671) |
| - Messages with inconsistent consumer epochs are not filtered when using batch receive and trigger timeout. by @shibd in [#17318](https://github.com/apache/pulsar/pull/17318) |
| - Improve docs and code quality about KeyValueSchema usages by @BewareMyPower in [#17256](https://github.com/apache/pulsar/pull/17256) |