You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by ch...@apache.org on 2026/09/26 14:57:20 UTC

(kafka) branch 4.4 updated: MINOR: Document protocol message reader allocation limits (#23565)

This is an automated email from the ASF dual-hosted git repository.

chia7712 pushed a commit to branch 4.4
in repository https://gitbox.apache.org/repos/asf/kafka.git


The following commit(s) were added to refs/heads/4.4 by this push:
     new 55476975a47 MINOR: Document protocol message reader allocation limits (#23565)
55476975a47 is described below

commit 55476975a47875bf3f35545447556437669f0a45
Author: Russole Chen <54...@users.noreply.github.com>
AuthorDate: Sat Sep 26 22:56:41 2026 +0800

    MINOR: Document protocol message reader allocation limits (#23565)
    
    Add a 4.4.0 upgrade note for the message reader allocation limits added
    in ea1f10a713.  Document the collection and tagged field limits, along
    with the capped initial collection allocation.
    
    Reviewers: Chia-Ping Tsai <ch...@gmail.com>
---
 docs/getting-started/upgrade.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/docs/getting-started/upgrade.md b/docs/getting-started/upgrade.md
index 958ca18a706..b6d897e318c 100644
--- a/docs/getting-started/upgrade.md
+++ b/docs/getting-started/upgrade.md
@@ -33,6 +33,7 @@ type: docs
 ### Notable changes in 4.4.0
 
   * The `ClientQuotaCallback#updateClusterMetadata` method is deprecated and will be removed in Kafka 5.0. Custom implementations of `ClientQuotaCallback` no longer need to override this method, as a default no-op implementation is now provided. For further details, please refer to [KIP-1200](https://cwiki.apache.org/confluence/x/axBJFg).
+  * Protocol message readers now limit array and collection allocations when decoding messages. Arrays and collections with more than 1,000,000 elements and flexible-version tagged-field sections with more than 10,000 fields are rejected before allocation. Arrays and collections are initially allocated with a capacity no greater than 1,000 and grow as needed during decoding.
   * New configs have been introduced: remote.copy.lag.bytes, remote.copy.lag.ms and their corresponding broker-level configurations. They allow tiered storage redundancy reduced with delayed upload. For further details, please refer to [KIP-1241](https://cwiki.apache.org/confluence/x/A4LMFw).
   * The in-memory keystores (used for PEM certificates) now use the default type provided by `KeyStore.getDefaultType()` instead of the hardcoded PKCS12 type.
   * Storage directories formatted by the `kafka-storage` tool are no longer forward-compatible. A Kafka broker must be the same version as, or newer than, the `kafka-storage` tool that formatted its directory, regardless of the `--release-version` chosen at format time. For further details, please refer to [KIP-1170](https://cwiki.apache.org/confluence/x/ZYoEFQ).