From a93e8df1c66f369b580dff897d6fa15f98b7fb1d Mon Sep 17 00:00:00 2001 From: 3AceShowHand Date: Tue, 24 Dec 2024 17:51:27 +0800 Subject: [PATCH 1/2] add description about the tidb extension field --- ticdc/ticdc-canal-json.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/ticdc/ticdc-canal-json.md b/ticdc/ticdc-canal-json.md index 9b8f51354d0a..eb4937908ba5 100644 --- a/ticdc/ticdc-canal-json.md +++ b/ticdc/ticdc-canal-json.md @@ -82,7 +82,21 @@ TiCDC 会把一个 DDL Event 编码成如下 Canal-JSON 格式: | mysqlType | object | 当 isDdl 为 false 时,记录每一列数据类型在 MySQL 中的类型表示 | | data | Object | 当 isDdl 为 false 时,记录每一列的名字及其数据值 | | old | Object | 仅当该条消息由 Update 类型事件产生时,记录每一列的名字,和 Update 之前的数据值 | -| _tidb | Object | TiDB 扩展字段,仅当 `enable-tidb-extension` 为 true 时才会存在。其中的 `commitTs` 值为造成 Row 变更的事务的 TSO | +| _tidb | Object | TiDB 扩展字段,仅当 `enable-tidb-extension` 为 true 时才会存在。 | + + +_tidb 即 TiDB 扩展字段中的子字段说明: + +| 字段 | 类型 | 说明 | +|:-------------------|:-------|:-------------------------------------------------------------------------| +| commitTs | Number | 产生事件变更的事务提交使用的 TSO。 设置于 DDL 和 DML 事件 | +| watermarkTs | Number | TiCDC 周期性发送的 watermark ts,其类型也是 TSO。设置于 Watermark 事件| +| tableId | Number | 事件所属表的 ID。设置于 DML 事件 | +| partitionId | Number | 事件如果来自于分区表,消息会携带该字段,表示所属分区的 ID。设置于 DML 事件 | +| onlyHandleKey | Bool | 当前事件仅包含 handle key 部分内容。设置于 DML 事件 | +| claimCheckLocation | String | 当前事件含有 claim check location。设置于 DML 事件 | + +tableId 和 partitionId 字段从 xxx 版本开始引入,主要目的是为了应对分区表场景下,消费者可以通过 partitionId 得知当前事件所属的表分区,以及关联的分区表。 ### DML Event From dd3515d6f0a7280fef006ab52d4b8380ed89c344 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Fri, 3 Jan 2025 16:37:52 +0800 Subject: [PATCH 2/2] Update ticdc/ticdc-canal-json.md --- ticdc/ticdc-canal-json.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ticdc/ticdc-canal-json.md b/ticdc/ticdc-canal-json.md index eb4937908ba5..9c2851753e44 100644 --- a/ticdc/ticdc-canal-json.md +++ b/ticdc/ticdc-canal-json.md @@ -85,18 +85,18 @@ TiCDC 会把一个 DDL Event 编码成如下 Canal-JSON 格式: | _tidb | Object | TiDB 扩展字段,仅当 `enable-tidb-extension` 为 true 时才会存在。 | -_tidb 即 TiDB 扩展字段中的子字段说明: +_tidb 即 TiDB 扩展字段,其子字段说明如下: | 字段 | 类型 | 说明 | |:-------------------|:-------|:-------------------------------------------------------------------------| -| commitTs | Number | 产生事件变更的事务提交使用的 TSO。 设置于 DDL 和 DML 事件 | -| watermarkTs | Number | TiCDC 周期性发送的 watermark ts,其类型也是 TSO。设置于 Watermark 事件| +| commitTs | Number | 产生事件变更的事务提交使用的 TSO。设置于 DDL 和 DML 事件 | +| watermarkTs | Number | TiCDC 周期性发送的 Watermark Ts,其类型也是 TSO。设置于 Watermark 事件| | tableId | Number | 事件所属表的 ID。设置于 DML 事件 | | partitionId | Number | 事件如果来自于分区表,消息会携带该字段,表示所属分区的 ID。设置于 DML 事件 | | onlyHandleKey | Bool | 当前事件仅包含 handle key 部分内容。设置于 DML 事件 | | claimCheckLocation | String | 当前事件含有 claim check location。设置于 DML 事件 | -tableId 和 partitionId 字段从 xxx 版本开始引入,主要目的是为了应对分区表场景下,消费者可以通过 partitionId 得知当前事件所属的表分区,以及关联的分区表。 +`tableId` 和 `partitionId` 字段从 xxx 版本开始引入,主要目的是为了应对分区表场景下,消费者可以通过 `partitionId` 得知当前事件所属的表分区,以及关联的分区表。 ### DML Event