[ https://issues.apache.org/jira/browse/KAFKA-9331?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17004305#comment-17004305 ]
Matthias J. Sax commented on KAFKA-9331: ---------------------------------------- Well, if a thread dies, the assumption is, that restarting it does not necessarily help, and it would crash after restart again? Even if we stop all other threads, the Java application will still continue to run. How would the user know? In a multi-threaded application, as user _needs_ to register a handler to learn about dying threads and to make decision to raise an alert or stop the whole application. I agree that we could do better, but IMHO there is not too much we actually can do... > Add option to terminate application when StreamThread(s) die > ------------------------------------------------------------ > > Key: KAFKA-9331 > URL: https://issues.apache.org/jira/browse/KAFKA-9331 > Project: Kafka > Issue Type: Improvement > Components: streams > Affects Versions: 2.4.0 > Reporter: Michael Bingham > Priority: Minor > Labels: needs-kip > > Currently, if a {{StreamThread}} dies due to an unexpected exception, the > Streams application continues running. Even if all {{StreamThread}}s die, the > application will continue running, but will be in an {{ERROR}} state. > Many users want or expect the application to terminate in the event of a > fatal exception that kills one or more {{StreamThread}}s. Currently, this > requires extra work from the developer to register an uncaught exception > handler on the {{KafkaStreams}} object and trigger a shutdown as needed. > It would be useful to provide a configurable option for the Streams > application to have it automatically terminate with an exception if one or > more {{StreamThread}}(s) die. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)