[
https://issues.apache.org/jira/browse/KAFKA-20917?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Xi Wang updated KAFKA-20917:
----------------------------
Summary: [Java-client] Improve RecordAccumulator.ready performance (was:
Improve RecordAccumulator.ready performance)
> [Java-client] Improve RecordAccumulator.ready performance
> ---------------------------------------------------------
>
> Key: KAFKA-20917
> URL: https://issues.apache.org/jira/browse/KAFKA-20917
> Project: Kafka
> Issue Type: Improvement
> Components: producer
> Reporter: Xi Wang
> Priority: Major
> Attachments: Screenshot 2026-08-10 at 8.37.01 PM.png, Screenshot
> 2026-08-10 at 8.42.36 PM.png, Screenshot 2026-08-10 at 8.45.57 PM.png,
> image-2026-08-10-20-35-09-732.png, image-2026-08-10-20-43-01-781.png
>
>
> After upgrading producer client from 2.9 to 3.9, we noticed produce latency
> increase, especially for ack-all producer, e.g. P50 latency increase from 8ms
> to 13ms, ~60% increase.
> !Screenshot 2026-08-10 at 8.37.01 PM.png!
> The profiling shows ready call is hot. The 3.9 client include many checks and
> calculations in RecordAccumulator.ready -> partitionReady method, especially
> for adaptive partitioning. after disable adaptive partitioning, we still
> didn't see latency drop to as 2.9 client.
> 2.9 client profiling
> !Screenshot 2026-08-10 at 8.42.36 PM.png!
> 3.9 client profiling
> !image-2026-08-10-20-43-01-781.png!
> We found out the linked PRs address performance issue and after deploying it
> to our ack-all cluster (with adaptive partitioning disabled), the latency
> became similar as 2.9 client.
> !Screenshot 2026-08-10 at 8.45.57 PM.png!
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)