You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Matthias J. Sax (Jira)" <ji...@apache.org> on 2026/08/25 01:25:00 UTC
[jira] [Updated] (KAFKA-20861) Kafka Streams should handle corrupted assignment pro-actively
[ https://issues.apache.org/jira/browse/KAFKA-20861?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matthias J. Sax updated KAFKA-20861:
------------------------------------
Description: With KIP-1071, task assignment went into the broker. Atm, KS blindly assumes that the assignment is valid, but if there is indeed an corruption, we might hit a NPE inside maybeReconcile() inside the async-consumer triggering https://issues.apache.org/jira/browse/KAFKA-20860. Even after K20860 is fixed, we would still cycle in an infinite crash loop inside the aysnc-consumer on very heartbeat. To address this, we propose to pro-actively verify the assignment, and if the KS client cannot process it correctly, we should raise a KS exception, shutting down the StreamsThread and triggering the uncaught exception handler, to cleanly surface the error. (was: With KIP-1071, task assignment went into the broker. Atm, KS blindly assumes that the assignment is valid, but if there is indeed an corruption, we might hit a NPE inside
maybeReconcile() inside the async-consumer triggering https://issues.apache.org/jira/browse/KAFKA-20860. Even after K20860 is fixed, we would still cycle in an infinite crash loop inside the aysnc-consumer on very heartbeat.
To address this, we propose to pro-actively verify the assignment, and if the KS client cannot process it correctly, we should raise a KS exception, shutting down the StreamsThread and triggering the uncaught exception handler, to cleanly surface the error.)
> Kafka Streams should handle corrupted assignment pro-actively
> -------------------------------------------------------------
>
> Key: KAFKA-20861
> URL: https://issues.apache.org/jira/browse/KAFKA-20861
> Project: Kafka
> Issue Type: Bug
> Components: streams
> Affects Versions: 4.2.0
> Reporter: Matthias J. Sax
> Assignee: Matthias J. Sax
> Priority: Major
> Fix For: 4.4.0, 4.2.2, 4.3.2
>
>
> With KIP-1071, task assignment went into the broker. Atm, KS blindly assumes that the assignment is valid, but if there is indeed an corruption, we might hit a NPE inside maybeReconcile() inside the async-consumer triggering https://issues.apache.org/jira/browse/KAFKA-20860. Even after K20860 is fixed, we would still cycle in an infinite crash loop inside the aysnc-consumer on very heartbeat. To address this, we propose to pro-actively verify the assignment, and if the KS client cannot process it correctly, we should raise a KS exception, shutting down the StreamsThread and triggering the uncaught exception handler, to cleanly surface the error.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)