json 中的 Maxwell xid 写入了消息队列

Maxwell xid in the json written to the massage queue

我可以在下面的 json 中看到我们在所有写入 kafka 的 jason 中得到了一个 xid。

{"database":"TEST","table":"MAXWELL","type":"insert","ts":1234811111,"**xid**":2009527,"commit":true,"data":{"id":2,"name":"test"}}

我想知道的是,

  1. 这个 xid 是否对每个 event.So 都是唯一的,我可以告诉你那个 xid 来唯一标识一个数据库事件。
  2. 这个甚至因为某些原因被反感了,那事件会不会有 相同的 xid?

注意:我尝试通过手动更改 positions.binlog_positions 并在新服务器中启动新的 maxwell 实例来重新发送相同的事件。我从新的 maxwell 实例获得相同事件的相同 xids。

xid来自mysql的binlog,对应innodb的"transaction_id"。它对于事务是唯一的,但仅在 运行 服务器的上下文中。