有人知道在Spring Kafka的DefaultErrorHandler中将ackAfterHandle设置为false的含义吗?
它是吗
- 本质上导致应用程序是";"卡住";并且无法继续处理下一条消息,或者
- 不提交偏移量,而是在之后移动到偏移量,这本质上跳过了导致错误的消息
直觉上,我认为如果我将ackAfterHandle设置为false,它#1是预期的行为,但我的测试表明它#2是对行为的更准确描述。
如果它确实是#2,那么ackAfterHandle的意义何在,无论它是真是假,本质上都会丢弃错误并处理后续消息?
谢谢!
#2;这就是为什么默认情况下它是真的。
将其设置为false没有多大意义,但由于历史原因(框架的早期版本从未提交"已处理"错误记录的偏移(,它仍然存在。
要实现#1行为,请使用CommonContainerStoppingErrorHandler
。