Spring Kafka DefaultErrorHandler ackAfterHandle=错误行为



有人知道在Spring Kafka的DefaultErrorHandler中将ackAfterHandle设置为false的含义吗?

它是吗

  1. 本质上导致应用程序是";"卡住";并且无法继续处理下一条消息,或者
  2. 不提交偏移量,而是在之后移动到偏移量,这本质上跳过了导致错误的消息

直觉上,我认为如果我将ackAfterHandle设置为false,它#1是预期的行为,但我的测试表明它#2是对行为的更准确描述。

如果它确实是#2,那么ackAfterHandle的意义何在,无论它是真是假,本质上都会丢弃错误并处理后续消息?

谢谢!

#2;这就是为什么默认情况下它是真的。

将其设置为false没有多大意义,但由于历史原因(框架的早期版本从未提交"已处理"错误记录的偏移(,它仍然存在。

要实现#1行为,请使用CommonContainerStoppingErrorHandler

最新更新