Debezium Kafka Connect升级至2.4.0后出现Outbox模式警告求助
问题原因
这个警告是因为你的table.include.list包含了public.debezium_heartbeat心跳表,而Debezium的心跳机制会定期执行heartbeat.action.query更新该表的ts字段。Outbox模式的EventRouter转换器默认仅处理INSERT操作(符合Outbox模式通过插入事件记录生成消息的设计),当它捕获到心跳表的UPDATE操作时,就会抛出该警告并忽略这条非预期的更新消息。
解决方案
最简洁有效的处理方式是让Outbox转换器只处理业务事件表(你的kafkaoutbox表),排除心跳表的处理:
在你的Connector配置中添加以下参数:
"transforms.outbox.table.include.list": "public.kafkaoutbox"
这个配置会覆盖全局的table.include.list,让EventRouter只关注指定的outbox业务表,心跳表的变更会正常由Connector处理,但不会经过Outbox转换器,也就不会触发警告。
备选方案(不推荐)
如果确实需要让Outbox转换器处理其他操作类型,可以配置允许的操作类型,但这会让心跳表的更新也被处理,无业务意义:
"transforms.outbox.event.op.include": "c,u,d"
(c代表INSERT,u代表UPDATE,d代表DELETE)
内容的提问来源于stack exchange,提问作者prashant
相关产品推荐
相关产品推荐

