Debezium嵌入式引擎可以获得事务元数据吗?



由于我们使用solace作为消息代理,我正在研究在Mysql CDC中使用debezium嵌入式引擎。

在某些场景中,事务元数据是必需的,我引用了一个嵌入式引擎示例:

this.debeziumEngine = DebeziumEngine.create(ChangeEventFormat.of(Connect.class))
.using(customerConnectorConfiguration.asProperties())
.notifying(this::handleChangeEvent)
.build();
...
private void handleChangeEvent(RecordChangeEvent<SourceRecord> sourceRecordRecordChangeEvent) {
SourceRecord sourceRecord = sourceRecordRecordChangeEvent.record();
...
}

与gtid_mode=ON,我可以在sourceRecord的值中获得gtid,但不知道如何侦听事务事件。

START TRANSACTION;
INSERT INTO customerdb.customer (id, fullname, email) VALUES (19, 'gee', 'gee@example.com');
COMMIT;

通过运行上面的脚本,似乎引擎无法获得事务开始/结束事件?

谁能给我一些启发或提供一些样品?谢谢~

Solace开发了一个Debezium连接器来捕获所有数据库事务,并使其在Solace事件代理中作为事件可用。

Solace Debezium Connector定位为开源解决方案,我们很高兴与您分享工作解决方案,以便您在用例中探索和定位。

请分享你的官方邮箱id,我们会分享所有细节。

问候,

最新更新