TiCDC崩溃

【TiDB 使用环境】测试环境
【TiDB 版本】v7.5.6
【操作系统】centos
【部署方式】机器部署
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
将同步表从varchar改为text后,ticdc任务同步报错,表结构是创建任务的时候缓存的吗?

github.com/pingcap/tiflow/pkg/sink/codec/maxwell.rowChangeToMaxwellMsg(0xc003f020b0, 0x0)
        github.com/pingcap/tiflow/pkg/sink/codec/maxwell/maxwell_message.go:118 +0x758
github.com/pingcap/tiflow/pkg/sink/codec/maxwell.(*BatchEncoder).AppendRowChangedEvent(0xc00842dd40, {0xc007f8de8c?, 0x0?}, {0x0?, 0x0?}, 0x1?, 0xc002a073a0)
        github.com/pingcap/tiflow/pkg/sink/codec/maxwell/maxwell_encoder.go:52 +0x2f
github.com/pingcap/tiflow/pkg/sink/codec.(*encoderGroup).runEncoder(0xc003601f80, {0x57b2e48, 0xc002e1bef0}, 0x1)
        github.com/pingcap/tiflow/pkg/sink/codec/encoder_group.go:116 +0x366
github.com/pingcap/tiflow/pkg/sink/codec.(*encoderGroup).Run.func2()
        github.com/pingcap/tiflow/pkg/sink/codec/encoder_group.go:95 +0x26
golang.org/x/sync/errgroup.(*Group).Go.func1()
        golang.org/x/sync@v0.3.0/errgroup/errgroup.go:75 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1390
        golang.org/x/sync@v0.3.0/errgroup/errgroup.go:72 +0x96
panic: interface conversion: interface {} is string, not []uint8
1 个赞

看了一下相关的贴子,都是低版本已修复。

2 个赞

换个格式吧,比如

  • TiCDC Canal-JSON Protocol
  • TiCDC Debezium Protocol
  • TiCDC Open Protocol
  • TiCDC Avro Protocol

JSON格式,推荐使用

  • TiCDC Canal-JSON Protocol
  • TiCDC Debezium Protocol
2 个赞

:joy:原来是已弃用的,我们改一下吧。

1 个赞

上了flink,maxwell现在用的场景不高了

1 个赞

报错是因为 Maxwell 格式适配问题吧,TiDB v7.5.6 建议改用 Canal-JSON/Debezium 格式。或者干脆升级吧,允许的话。

1 个赞

json格式错误了

mark下

说实话日志提供的有点少,但是从提供的内容来看,问题应该还是在兼容性加密上面吧