mjsax commented on code in PR #16675:
URL: https://github.com/apache/kafka/pull/16675#discussion_r1692266139


##########
streams/src/main/java/org/apache/kafka/streams/processor/internals/ProcessorNode.java:
##########
@@ -214,9 +214,13 @@ public void process(final Record<KIn, VIn> record) {
                 internalProcessorContext.currentNode().name(),
                 internalProcessorContext.taskId());
 
-            final ProcessingExceptionHandler.ProcessingHandlerResponse 
response = processingExceptionHandler
-                .handle(errorHandlerContext, record, e);
+            final ProcessingExceptionHandler.ProcessingHandlerResponse 
response;
 
+            try {
+                response = 
processingExceptionHandler.handle(errorHandlerContext, record, e);
+            } catch (final Exception fatalUserException) {
+                throw new StreamsException("Fatal user code error in 
processing error callback", fatalUserException);

Review Comment:
   Should we add an error log before throwing?
   
   Btw: it seems we have such a guard only for the 
`DeserializationExceptionHandler#handle(...)` call, but not for the 
`ProductionExceptionHanlder#call(...)`? Might be good to do a follow up PR to 
add it to the proction-error-handler case, too?



-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to