From aba0e2acc1f0e514211c0d3400acccef0cd84f70 Mon Sep 17 00:00:00 2001 From: Ti Chi Robot Date: Thu, 21 Nov 2024 10:21:26 +0800 Subject: [PATCH 1/2] This is an automated cherry-pick of #17478 Signed-off-by: ti-chi-bot --- ticdc/ticdc-split-update-behavior.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ticdc/ticdc-split-update-behavior.md b/ticdc/ticdc-split-update-behavior.md index 748923be3905..595082223f2f 100644 --- a/ticdc/ticdc-split-update-behavior.md +++ b/ticdc/ticdc-split-update-behavior.md @@ -8,7 +8,11 @@ aliases: ['/zh/tidb/dev/ticdc-behavior-change'] ## MySQL Sink 拆分 `UPDATE` 事件行为说明 +<<<<<<< HEAD 从 v6.5.10、v7.5.2、v8.1.1 开始,当使用 MySQL Sink 时,TiCDC 的任意节点每次收到某张表的同步任务请求并开始向下游同步数据之前,会从 PD 获取当前的时间戳 `thresholdTS`,并根据时间戳的值决定是否拆分对应表的 `UPDATE` 事件: +======= +从 v6.5.10 和 v7.1.6 开始,当使用 MySQL Sink 时,TiCDC 的任意节点每次收到某张表的同步任务请求并开始向下游同步数据之前,会从 PD 获取当前的时间戳 `thresholdTS`,并根据时间戳的值决定是否拆分对应表的 `UPDATE` 事件: +>>>>>>> 1adf536f7d (v7.1.6: ticdc: add description for cdc behaviour change (#17363) (#17478)) - 对于含有单条或多条 `UPDATE` 变更的事务,如果该事务的 `commitTS` 小于 `thresholdTS`,在写入 Sorter 模块之前 TiCDC 会将每条 `UPDATE` 事件拆分为 `DELETE` 和 `INSERT` 两条事件。 - 对于事务的 `commitTS` 大于或等于 `thresholdTS` 的 `UPDATE` 事件,TiCDC 不会对其进行拆分。详情见 GitHub issue [#10918](https://github.com/pingcap/tiflow/issues/10918)。 @@ -139,6 +143,7 @@ COMMIT; | v7.1.1 | Canal/Open | ✗ | ✓ |  | | v7.1.1 | CSV/Avro | ✗ | ✗ | 拆分但是不排序, 详见 [#9086](https://github.com/pingcap/tiflow/issues/9658) | | v7.1.2 ~ v7.1.5 | 所有协议 | ✓ | ✗ |  | +<<<<<<< HEAD | \>= v7.1.6(待发布)| 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | #### Release 7.5 的兼容性 @@ -154,3 +159,6 @@ COMMIT; | -- | -- | -- | -- | -- | | v8.1.0 | 所有协议 | ✓ | ✗ | | | \>= v8.1.1 | 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | +======= +| \>= v7.1.6 | 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | +>>>>>>> 1adf536f7d (v7.1.6: ticdc: add description for cdc behaviour change (#17363) (#17478)) From 2dae23bb0f56a9b4aaab17b25080640d5553ca09 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 21 Nov 2024 10:28:45 +0800 Subject: [PATCH 2/2] Apply suggestions from code review --- ticdc/ticdc-split-update-behavior.md | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/ticdc/ticdc-split-update-behavior.md b/ticdc/ticdc-split-update-behavior.md index 595082223f2f..c37d8fb257d1 100644 --- a/ticdc/ticdc-split-update-behavior.md +++ b/ticdc/ticdc-split-update-behavior.md @@ -8,11 +8,7 @@ aliases: ['/zh/tidb/dev/ticdc-behavior-change'] ## MySQL Sink 拆分 `UPDATE` 事件行为说明 -<<<<<<< HEAD -从 v6.5.10、v7.5.2、v8.1.1 开始,当使用 MySQL Sink 时,TiCDC 的任意节点每次收到某张表的同步任务请求并开始向下游同步数据之前,会从 PD 获取当前的时间戳 `thresholdTS`,并根据时间戳的值决定是否拆分对应表的 `UPDATE` 事件: -======= -从 v6.5.10 和 v7.1.6 开始,当使用 MySQL Sink 时,TiCDC 的任意节点每次收到某张表的同步任务请求并开始向下游同步数据之前,会从 PD 获取当前的时间戳 `thresholdTS`,并根据时间戳的值决定是否拆分对应表的 `UPDATE` 事件: ->>>>>>> 1adf536f7d (v7.1.6: ticdc: add description for cdc behaviour change (#17363) (#17478)) +从 v6.5.10、v7.1.6、v7.5.2、v8.1.1 开始,当使用 MySQL Sink 时,TiCDC 的任意节点每次收到某张表的同步任务请求并开始向下游同步数据之前,会从 PD 获取当前的时间戳 `thresholdTS`,并根据时间戳的值决定是否拆分对应表的 `UPDATE` 事件: - 对于含有单条或多条 `UPDATE` 变更的事务,如果该事务的 `commitTS` 小于 `thresholdTS`,在写入 Sorter 模块之前 TiCDC 会将每条 `UPDATE` 事件拆分为 `DELETE` 和 `INSERT` 两条事件。 - 对于事务的 `commitTS` 大于或等于 `thresholdTS` 的 `UPDATE` 事件,TiCDC 不会对其进行拆分。详情见 GitHub issue [#10918](https://github.com/pingcap/tiflow/issues/10918)。 @@ -143,8 +139,7 @@ COMMIT; | v7.1.1 | Canal/Open | ✗ | ✓ |  | | v7.1.1 | CSV/Avro | ✗ | ✗ | 拆分但是不排序, 详见 [#9086](https://github.com/pingcap/tiflow/issues/9658) | | v7.1.2 ~ v7.1.5 | 所有协议 | ✓ | ✗ |  | -<<<<<<< HEAD -| \>= v7.1.6(待发布)| 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | +| \>= v7.1.6 | 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | #### Release 7.5 的兼容性 @@ -159,6 +154,3 @@ COMMIT; | -- | -- | -- | -- | -- | | v8.1.0 | 所有协议 | ✓ | ✗ | | | \>= v8.1.1 | 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | -======= -| \>= v7.1.6 | 所有协议 | ✓ (默认值:`output-raw-change-event = false`) | ✓ (可选配置项:`output-raw-change-event = true`) | | ->>>>>>> 1adf536f7d (v7.1.6: ticdc: add description for cdc behaviour change (#17363) (#17478))