sebastienviale commented on code in PR #16675:
URL: https://github.com/apache/kafka/pull/16675#discussion_r1698015268
##########
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:
> > > 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?
> >
> >
> > @mjsax is it mandatory for this KIP ?
>
> Well, we don't want a handler which throws an exception to **not** crash
KS, because the exception is caught in an upstream handler, right? But should
be a simple thing to add?
>
> But I see your point that it's not really related to the KIP. I can do a
follow up myself.
Ok, I will open a new PR for that !
--
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]