Tommy Becker created KAFKA-16018:
------------------------------------

             Summary: KafkaStreams can go into a zombie state if 
UncaughtExceptionHandler is specified via the deprecated method
                 Key: KAFKA-16018
                 URL: https://issues.apache.org/jira/browse/KAFKA-16018
             Project: Kafka
          Issue Type: Bug
          Components: streams
    Affects Versions: 3.3.2
            Reporter: Tommy Becker


We have a streams application in which all StreamThreads died due to a lack of 
disk space. To our surprise, the KafkaStreams instance still reported its state 
as running. Upon further investigation, it appears this is due to the 
application setting an UncaughtExceptionHandler via the deprecated method (this 
application was recently upgraded from 2.4.1): 
[https://kafka.apache.org/33/javadoc/org/apache/kafka/streams/KafkaStreams.html#setUncaughtExceptionHandler(java.lang.Thread.UncaughtExceptionHandler)]

The only way a StreamThread failure can cause the KafkaStreams instance to 
transition to an error state now is via the new StreamsUncaughtExceptionHandler 
machinery, but when an old UncaughtExceptionHandler is set by the old method 
this code is effectively bypassed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to