我正在使用 debezium postgres 连接器实现发件箱模式,建立在官方文档的基础上:https://debezium.io/documentation/reference/stable/transformations/outbox-event-router.html.
Evething 好,但现在我看到奇怪的行为,如果 kafka 消息中缺少空数组
transforms.outbox.table.expand.json.payload
真正的
如果在表中我有值“{“some”:“test”,“agreemets”:[]}”在主题消息中看起来{“some”:“test”}。
第一行,如果我们设置为 false 第二行,如果我们设置为 true
如何防止删除空数组?
我完整的 Kafka 连接配置
{
"connector.class": "io.debezium.connector.postgresql.PostgresConnector",
"tasks.max": "1",
"database.hostname": "db",
"database.port": "5432",
"database.user": "postgres",
"database.password": "postgres",
"database.dbname": "mycbh_dev",
"database.server.name": "db",
"schema.include.list": "common",
"table.include.list": "common.outboxmessages",
"tombstones.on.delete": "false",
"transforms": "outbox",
"transforms.outbox.type": "io.debezium.transforms.outbox.EventRouter",
"transforms.outbox.route.by.field": "topic",
"transforms.outbox.route.topic.replacement": "${routedByValue}",
"transforms.outbox.table.field.event.timestamp": "created_at",
"transforms.outbox.table.expand.json.payload": "true",
"transforms.outbox.tracing.with.context.field.only": "true",
"plugin.name": "pgoutput"
}