[
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)