> ## 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.0.14.3

# StreamNative Weekly Release Notes v4.0.14.3

## Download

### Distributions

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

### Packages

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

### Images

* [sn-platform](https://hub.docker.com/layers/streamnative/sn-platform/4.0.14.3/images/sha256-50abd1bc263080ab158ccaa9b2a4fc538428eecae523ec5a4659ad2c64ff0221)

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

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

## General Changes

### Apache Pulsar

([#27051](https://github.com/apache/pulsar/pull/27051)) \[fix]\[broker]\[branch-4.0] Fix compaction failure on compressed batches with message properties

([#27026](https://github.com/apache/pulsar/pull/27026)) \[fix]\[broker] Retry incompatible replication schemas without topic unload

([#21767](https://github.com/apache/pulsar/pull/21767)) \[fix]\[client] Fix message leaks and size and permit accounting races when clearing the consumer's incoming queue

([#27021](https://github.com/apache/pulsar/pull/27021)) \[fix]\[broker] Reset fixed delay detection when the in-memory delayed delivery tracker is cleared

([#26845](https://github.com/apache/pulsar/pull/26845)) \[fix]\[meta] Fix repeated metadata recovery failures after a ZooKeeper session expires

([#27017](https://github.com/apache/pulsar/pull/27017)) \[fix]\[broker] Don't continue the REST topic listings that waited for a size estimate one after another on a metadata store thread

([#26999](https://github.com/apache/pulsar/pull/26999)) \[fix]\[proxy] Fix Proxy Protocol forwarding for UNKNOWN and IPv6

([#26945](https://github.com/apache/pulsar/pull/26945)) \[fix]\[broker] Fix topic listing memory limit enforcement

([#27011](https://github.com/apache/pulsar/pull/27011)) \[improve]\[doc] Warn about /tmp cleanup in narExtractionDirectory docs

([#27007](https://github.com/apache/pulsar/pull/27007)) \[fix]\[broker] Don't dispatch a replay read that was pending when all consumers of a Shared subscription disconnected

([#27005](https://github.com/apache/pulsar/pull/27005)) \[improve]\[ml] Don't visit a ledger's other single-entry pending reads for a read of a single entry

([#26701](https://github.com/apache/pulsar/pull/26701)) \[fix]\[broker] Fix spurious placement failures when IsolatedBookieEnsemblePlacementPolicy counts unavailable secondary bookies

([#26991](https://github.com/apache/pulsar/pull/26991)) \[fix]\[broker] Fence non-persistent subscriptions before asynchronous …

([#26978](https://github.com/apache/pulsar/pull/26978)) \[improve]\[meta] Log metadata store deletes at DEBUG

([#26976](https://github.com/apache/pulsar/pull/26976)) \[fix]\[broker] Remove the sticky key hashes of a sparse replay prefix when the mark-delete position moves

([#24912](https://github.com/apache/pulsar/pull/24912)) \[fix]\[broker] Fix partitioned topic auto deletion http request timeout

([#24793](https://github.com/apache/pulsar/pull/24793)) \[fix]\[broker] Producer still publishes messages to Broker after Topic was unloaded

([#24974](https://github.com/apache/pulsar/pull/24974)) \[fix]\[client] Fix retry logic for BinaryProtoLookupService.getTopicsUnderNamespace method

([#26664](https://github.com/apache/pulsar/pull/26664)) \[fix]\[broker] Prevent stale messages from surviving compaction retries

([#26742](https://github.com/apache/pulsar/pull/26742)) \[fix]\[ml] Complete the original future after ledger deletion retries

([#26828](https://github.com/apache/pulsar/pull/26828)) \[fix]\[meta] Fix leader election close deleting a leader node owned by another session

([#26940](https://github.com/apache/pulsar/pull/26940)) \[fix]\[metadata] Invalidate ledger metadata cache on version conflicts

([#25244](https://github.com/apache/pulsar/pull/25244)) \[fix]\[broker] The configuration subscriptionExpirationTimeMinutes does not work if the topic was reloaded frequently

([#25259](https://github.com/apache/pulsar/pull/25259)) \[fix]\[broker] Avoid false WARN log when replicator is already terminated

([#25766](https://github.com/apache/pulsar/pull/25766)) \[BUG] Fix stats in PulsarZooKeeperClient multi.

([#25040](https://github.com/apache/pulsar/pull/25040)) \[fix]\[admin] Use ClientConfigurationData timeout params to set AsyncHttpConnector timeout params

### KoP

\[fix] Prevent Kafka topic recovery stalls and initialization deadlocks

\[build]\[branch-4.0] Use the RBAC SDK from streamnative/rbac

### StreamNative Pulsar Plugins

fix(placement-policy): avoid per-entry rack resolution in AZ-aware read reordering

fix: upgrade detector compression and kube Go toolchain

### pulsarctl

test: use a valid integer for dynamic dispatch rate config

Upgrade Go to 1.26.10 to fix CVE-2026-111943

### StreamNative Unified RBAC

Fix seven bugs in the Pulsar plugins (4.0)

Build the Pulsar plugins for StreamNative Pulsar 4.0

Bump the RBAC SDKs to 1.17.0

Bump the RBAC SDKs to 1.16.3 and require full coverage

Remove the catch blocks that can never run from the Pulsar plugins

Bump the RBAC SDKs to 1.16.2

Cover the authorization provider with unit tests

Cover the management servlet with unit tests

Cover the broker interceptor with unit tests

Post Claude reviews in a tracking comment

Move the Gradle build into eco/sdk-java-pulsar

Add Claude Code review and @claude workflows

Bump the RBAC SDKs to 1.16.1

Speed up the ECO - Pulsar CI job

Move the SDKs to streamnative/rbac

perf: limit the authorization cache by estimated heap and expose its metrics

perf: route standard authorization checks through authzCache

perf: check only static and delegated super users in allowExtraOperationAsync

perf: check only static and delegated super users in allow\*

test: give each benchmark subject its own few topics

test: benchmark every RbacAuthorizationProvider authorization endpoint

fix: check super user once in canProduce/canConsume/canLookup

docs: convert README to Markdown with logo and badges

docs: add cherry-pick label rules and make AGENTS.md a symlink to CLAUDE.md

fix: build and test main against Pulsar 5.0.0.103

ci: report test coverage to Codecov

fix: expect unauthorized when Pulsar cluster listing is denied

fix: align CV role expectations and bound pool watches

fix: support org-basic role in cv tests

ci: version Pulsar plugin releases as `<StreamNative release>`.N

ci: version Pulsar plugin releases as X.Y.Z.N following the Pulsar release

ci: release the Pulsar authorization provider of each release line as X.Y.N

fix: preserve workspace fields

ci: publish release-line broker libraries as X.Y-SNAPSHOT daily

fix: unblock the release workflow (Java 21 target for Pulsar 5 plugins, Go 1.25 validation)

fix: preserve authentication provider identity in authorization cache

Align dependencies and Jakarta integration with Pulsar 5

## Security Fixes

### Apache Pulsar

([#27023](https://github.com/apache/pulsar/pull/27023)) \[fix]\[sec] Bump github.com/klauspost/compress from 1.18.0 to 1.18.7 in /pulsar-function-go


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.