ableegoldman commented on a change in pull request #10387:
URL: https://github.com/apache/kafka/pull/10387#discussion_r600055319



##########
File path: streams/src/main/java/org/apache/kafka/streams/KafkaStreams.java
##########
@@ -492,22 +492,18 @@ private void handleStreamsUncaughtException(final 
Throwable throwable,
                 closeToError();
                 break;
             case SHUTDOWN_APPLICATION:
+                if (getNumLiveStreamThreads() <= 1) {
+                    log.warn("Adding thread to communicate the shutdown. No 
processing will be done on this thread");
+                    addStreamThread();
+                }
                 if (throwable instanceof Error) {
                     log.error("This option requires running threads to shut 
down the application." +
                             "but the uncaught exception was an Error, which 
means this runtime is no " +
                             "longer in a well-defined state. Attempting to 
send the shutdown command anyway.", throwable);
                 }
-
-                if (Thread.currentThread().equals(globalStreamThread) && 
getNumLiveStreamThreads() == 0) {
-                    log.error("Exception in global thread caused the 
application to attempt to shutdown." +

Review comment:
       Well, who knows what the exception is -- could be some local disk error 
or corruption, or they're using a remote state store and god-knows-what 
happened. I agree that it's probably rare for a global-only app to hit an 
exception and fail to shut down the application, and not end up shutting down 
anyways due to hitting the same exception elsewhere. But anything's possible




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to