CDC Parameter Incompatibility in Version 7.5.1

Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.

Original topic: 7.5.1 版本cdc 参数不兼容

| username: 是我的海

[TiDB Usage Environment] Production Environment - v7.5.1
Error when creating CDC synchronization task
Issue 1: The configuration file’s enable-old-value = true is not recognized when creating the task. This configuration has always been used normally before version 6.x. The synchronization task can be created normally after removing this parameter.

tiup ctl:v7.5.1 cdc changefeed create --server=http://1xxxxxx:8324   
--sink-uri="kafka://xxxxxx9092/tidb-supexxx?protocol=canal-json&kafka-version=2.4.1
&partition-num=6&max-message-bytes=10485760&compression=lz4&replication-factor=1"  
--config=/home/tidb/cdctoml/cdc-xxxxxx-kafka.toml --changefeed-id="cdc-xxxx-kafka" --sort-engine="unified"

Issue 2: Under protocol=canal-json, if version 7.5 does not support the enable-old-value parameter, will the messages passed to Kafka still contain old-value?

Issue 3: The parameter index-value in the configuration file is not recognized

{matcher = ['rtquery.*'], partition = "index-value"}

Error as follows:
Error: [CDC:ErrDispatcherFailed]index not found when verify the table, table: rtquery.tblRealtimeSidAIGCCollegeDetailOnline, index:

| username: Kongdom | Original post link

I searched the official documentation, and this configuration item has been removed since v7.4.

| username: LingJin | Original post link

  1. The enable-old-value parameter is true by default, no further settings are required.
  2. Still outputs old-value.
  3. This should be a bug that needs to be fixed.
| username: IanWong | Original post link

The bug has been reported, refer to [CDC] Known incompatible setting issues after upgraded to new versions · Issue #10709 · pingcap/tiflow · GitHub
Suggested solution this time:
For issues 1 and 2:
Suggestion: enable-old-value should work as if it is set to on without needing configuration.
For issue 3:
Suggestion: partition = “ts”

| username: Kongdom | Original post link

:+1: :+1: :+1:

| username: 是我的海 | Original post link

Regarding question 3: Using ts configuration requires the downstream consumer to sort, otherwise the final data downstream will be disordered.
Now I want to confirm, can using partition=“column” achieve a similar index-value effect, improve consumption concurrency, and ensure data consistency?