Unified Sorter 功能

管理 Changefeed | TiDB 文档中心
注意
从 v6.0.0 开始,TiCDC 内部默认使用 DB Sorter 引擎来对数据进行排序,不再使用 Unified Sorter。建议用户不再主动配置 Sorter 项。
[root@euler01 v6.5.12]# ./cdc version
Release Version: v6.5.12
Git Commit Hash: 44885324d501a3291ac2aeabbfe94b8b802723dc
Git Branch: HEAD
UTC Build Time: 2025-02-17 07:33:19
Go Version: go version go1.19.13 linux/amd64
Failpoint Build: false
[root@euler01 v6.5.12]# ./cdc cli changefeed query --server=http://192.168.67.21:8300 --changefeed-id=simple-replication-task|grep -i sort
“sort_engine”: “unified”,

这里为什么显示的还是unified,和官方文档描述不一致呢?

新部署的才走新的默认值,之前部署升级到v6的,还是之前的值。

准备考PCTP,我这个是社区版本直接部署的6.5.12

这么说的话,可能是文档和实际不匹配了。

:joy:这个意思不会是内部直接使用DB Sorter,不再取配置里的sort_engine了吧。

可以来这里反馈一下。

这两个也不知道内部细节有什么区别,文档写的太简单了,无从选择。

有可能是不认配置项了

我来问问文档团队的老师~

我看的是6.5的文档,感觉一些技术细节的描述再丰富一下就好了。

1 个赞

默认使用db sorter了吧,这个还需要单独配置吗

我就是用的默认选项安装的

看 TiCDC server 启动参数和日志

搜索 cdc 日志里和 sorter 相关内容,例如:

grep -i sorter cdc.log
grep -i “db sorter” cdc.log
grep -i unified cdc.log

更有价值的是看:

是否有 db sorter 初始化 的日志

是否有 unified sorter 相关目录/组件启动日志

是否提示 unified sorter 已废弃或忽略配置

3 个赞

确认你是不是 grep 到了“旧配置回显”

有些 query 输出里可能同时包含:

原始 replica config

scheduler / runtime state

sink config

你最好把完整 JSON 导出来看一下 sort_engine 所在层级,例如:

./cdc cli changefeed query
–server=http://192.168.67.21:8300
–changefeed-id=simple-replication-task > cf.json

然后看这个字段是在:

config.sort_engine

还是 info.config.sort_engine

还是别的嵌套路径

如果它只是 config 中的一个静态字段,那更说明是配置展示,不是运行时事实。

3 个赞

感谢 @乾坤大挪移 老师的分享,应该就是配置展示了,文档里的意思应该是不建议去主动修改这个配置,默认情况下都不去使用这个

1 个赞

所以只是配置显示了但是实际上内部不会用到嘛

TiCDC v6.5.12 中 unified 已废弃,即使配置值显示为 unified实际运行时会自动切换为 DB Sorter