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)