> ## Documentation Index
> Fetch the complete documentation index at: https://docs.streamnative.io/llms.txt
> Use this file to discover all available pages before exploring further.

# V4.1.0.1

# StreamNative Weekly Release Notes v4.1.0.1

## Download

### Distributions

* [https://github.com/streamnative/pulsar/releases/tag/v4.1.0.1](https://github.com/streamnative/pulsar/releases/tag/v4.1.0.1)

### Packages

* [Maven Central](https://search.maven.org/artifact/io.streamnative/pulsar/4.1.0.1/pom)

### Images

* [sn-platform](https://hub.docker.com/layers/streamnative/sn-platform/4.1.0.1/images/sha256-0ce649625ae5389aa368b1b2253fd957104175d5b158b0409f33040a113a6c8e)

* [sn-platform-slim](https://hub.docker.com/layers/streamnative/sn-platform-slim/4.1.0.1/images/sha256-ae9bd01f7bb406b5cec9f2428bc4aaad1c27565e37a7f6cf3bcee883ce2f6993)

* [private-cloud](https://hub.docker.com/layers/streamnative/private-cloud/4.1.0.1/images/sha256-ae9bd01f7bb406b5cec9f2428bc4aaad1c27565e37a7f6cf3bcee883ce2f6993)

## General Changes

### Apache Pulsar

([#24719](https://github.com/apache/pulsar/pull/24719)) \[fix]\[broker] Fix memory leak when metrics are updated in a thread other than FastThreadLocalThread

([#24712](https://github.com/apache/pulsar/pull/24712)) \[improve]\[io] Upgrade to Debezium 3.2.2

([#24682](https://github.com/apache/pulsar/pull/24682)) \[improve]\[broker] Reduce unnecessary MessageMetadata parsing by caching the parsed instance in the broker cache

([#24594](https://github.com/apache/pulsar/pull/24594)) \[improve]\[build] Disable javadoc build failure

([#24706](https://github.com/apache/pulsar/pull/24706)) \[fix]\[broker] Fix NPE and annotate nullable return values for ManagedCursorContainer

([#23942](https://github.com/apache/pulsar/pull/23942)) \[improve]\[client]  PIP-407 Add newMessage with schema and transactions

([#24699](https://github.com/apache/pulsar/pull/24699)) \[improve]\[ml] Improve cache insert performance by removing exists check since it's already covered by putIfAbsent

([#24689](https://github.com/apache/pulsar/pull/24689)) \[feat]\[misc] upgrade oxia version to 0.6.2

([#24691](https://github.com/apache/pulsar/pull/24691)) \[fix]\[client] Fix potential NPE in TypedMessageBuilderImpl

([#24488](https://github.com/apache/pulsar/pull/24488)) \[improve]\[client] PIP-420: Supports users implement external schemas

([#24684](https://github.com/apache/pulsar/pull/24684)) \[improve]\[doc] Cleanup some legacy PIP documents and improve PIP listing

([#23351](https://github.com/apache/pulsar/pull/23351)) \[improve] \[pip] PIP-382: Add a label named reason for topic\_load\_failed\_total

([#24648](https://github.com/apache/pulsar/pull/24648)) \[fix]\[broker]User topic failed to delete after removed cluster because of failed delete data from transaction buffer topic

([#23222](https://github.com/apache/pulsar/pull/23222)) \[improve] \[pip] PIP-375 Expose the Admin client configs: readTimeout, requestTimeout, and connectionTimeout

([#23336](https://github.com/apache/pulsar/pull/23336)) \[fix]\[client] Fix ArrayIndexOutOfBoundsException when using SameAuthParamsLookupAutoClusterFailover

([#24681](https://github.com/apache/pulsar/pull/24681)) \[improve]\[test]Add new test PartitionCreationTest.testGetPoliciesIfPartitionsNotCreated

([#24678](https://github.com/apache/pulsar/pull/24678)) \[improve]\[doc] Update PIP links in PIP documents converted from the wiki and remove trailing whitespace

([#24679](https://github.com/apache/pulsar/pull/24679)) \[fix]\[broker]Fix flaky test PartitionCreationTest.testCreateMissedPartitions

([#24623](https://github.com/apache/pulsar/pull/24623)) \[improve]\[broker] Implement PIP-430 Pulsar Broker cache improvements

([#24622](https://github.com/apache/pulsar/pull/24622)) \[improve]\[broker]Find the target position at most once, during expiring messages for a topic, even though there are many subscriptions

([#24651](https://github.com/apache/pulsar/pull/24651)) \[fix]\[broker]Failed to create partitions after the partitions were deleted because topic GC

([#24665](https://github.com/apache/pulsar/pull/24665)) \[fix]\[meta] Use `getChildrenFromStore` to read children data to avoid lost data

([#23977](https://github.com/apache/pulsar/pull/23977)) \[fix]\[broker] Invalid regex in PulsarLedgerManager causes zk data notification to be ignored

([#24663](https://github.com/apache/pulsar/pull/24663)) \[fix]\[client] Skip schema validation when sending messages to DLQ to avoid infinite loop when schema validation fails on an incoming message

([#24669](https://github.com/apache/pulsar/pull/24669)) \[improve]\[io] Support specifying Kinesis KPL native binary path with 1.0 version specific path

([#24668](https://github.com/apache/pulsar/pull/24668)) \[improve]\[build] Use org.apache.nifi:nifi-nar-maven-plugin:2.1.0 with skipDocGeneration=true

([#24666](https://github.com/apache/pulsar/pull/24666)) \[improve]\[build] Increase maven resolver's sync context timeout

([#24427](https://github.com/apache/pulsar/pull/24427)) \[fix]\[broker] PIP-428: Fix corrupted topic policies issues with sequential topic policy updates

([#24661](https://github.com/apache/pulsar/pull/24661)) \[improve]\[io] Upgrade AWS SDK v1 & v2, Kinesis KPL and KPC versions

([#24662](https://github.com/apache/pulsar/pull/24662)) \[fix]\[client] fix ArrayIndexOutOfBoundsException in SameAuthParamsLookupAutoClusterFailover

([#24655](https://github.com/apache/pulsar/pull/24655)) \[improve]\[ml] Optimize ledger opening by skipping fully acknowledged ledgers

([#24660](https://github.com/apache/pulsar/pull/24660)) \[improve]\[doc] Add all legacy PIPs from Pulsar wiki and GitHub issues as files to pip directory

([#24659](https://github.com/apache/pulsar/pull/24659)) \[fix]\[misc] Upgrade fastutil to 8.5.16

### AoP

fix managed cursor container constructor in test

### KoP

Support broker side schema validation

Ursa: fix incorrect warn log when appending new messages

Correct token extraction for Kafka internal client

Remove useless authorization warning log

\[flaky-test] Fix ListConsumerGroupTest

Fix build issue caused by upstream interface changes

Remove dependencies with Confluent Community License

Ignore the read\_committed field in Ursa

Resolve RBAC compatibility issue

Fix topic read authorization not applied for OffsetDelete requests

Add module name

### StreamNative Pulsar Plugins

Adapt to the latest topic policies interface from PIP-428

Add audit logging support for non-partitioned topic creation

### pulsarctl

Update stable version

### StreamNative Ursa storage

Fix the external table commit state failed to check issue

Fix build failure on the latest snapshot

upgrade oxia version to 0.6.2

feat: upgrade oxia version to 0.6.1

IcebergTable support schema evolution

Add test for #1253.

Use number to convert the digital type at AvroToGenericRowConvert

## Security Fixes

### Apache Pulsar

([#24717](https://github.com/apache/pulsar/pull/24717)) \[fix]\[sec] Upgrade Netty to 4.1.127.Final to address CVEs
