Bug 反馈
清晰准确地描述您发现的问题,提供任何可能复现问题的步骤有助于研发同学及时处理问题
【 TiDB 版本】V6.5.8
【 Bug 的影响】
cdc进程不停重启
【可能的问题复现步骤】
1、cdc链路中过滤delete操作时 通过时间条件过滤,
ignore-delete-value-expr = "modified < ‘2022-01-01 00:00:00’ "
2、delete时该字段中存在null值
【看到的非预期行为】
cdc进程不停重启
【期望看到的行为】
1、文档中进行提醒
2、捕获到异常后进行其他方式处理,而非重启整个cdc进程
【相关组件及具体版本】
cdc组件 tidbv6.5.8版本
【其他背景信息或者截图】
goroutine 2508 [running]: github.com/pingcap/tidb/util/chunk.Row.IsNull(…) github.com/pingcap/tidb@v1.1.0-beta.0.20231124055343-a06279f27e4c/util/chunk/row.go:218 github.com/pingcap/tidb/expression.(*Column).EvalTime(0x3456fa2?, {0x0?, 0x34320c5?}, {0xc25187e910?, 0xc0034ed370?}) github.com/pingcap/tidb@v1.1.0-beta.0.20231124055343-a06279f27e4c/expression/column.go:464 +0xba github.com/pingcap/tidb/expression.CompareTime({0x4880418, 0xc0033cc9c0}, {0x487e468?, 0xc1786a2aa0?}, {0x487e5d0, 0xc21b261d40}, {0xc25187e910?, 0xc0bd1c3760?}, {0xc25187e910, 0x0}) github.com/pingcap/tidb@v1.1.0-beta.0.20231124055343-a06279f27e4c/expression/builtin_compare.go:3032 +0x59 github.com/pingcap/tidb/expression.(*builtinLTTimeSig).evalInt(0x40d95f?, {0xc25187e910?, 0xc0bd1c3760?}) github.com/pingcap/tidb@v1.1.0-beta.0.20231124055343-a06279f27e4c/expression/builtin_compare.go:2097 +0x6d github.com/pingcap/tidb/expression.(*ScalarFunction).EvalInt(0xc25187e8c0, {0x4880418, 0xc0033cc9c0}, {0xc25187e910?, 0x4f809e?}) github.com/pingcap/tidb@v1.1.0-beta.0.20231124055343-a06279f27e4c/expression/scalar_function.go:406 +0x9c github.com/pingcap/tidb/expression.(*ScalarFunction).Eval(0xc25187e8c0, {0xc25187e910?, 0xc248284360?}) github.com/pingcap/tidb@v1.1.0-beta.0.20231124055343-a06279f27e4c/expression/scalar_function.go:362 +0x265 github.com/pingcap/tiflow/pkg/filter.(*dmlExprFilterRule).skipDMLByExpression(0xc005b4eea0?, {0xc2535df100?, 0xc0d713e5a0?, 0x26?}, {0x487e8a0, 0xc25187e8c0}) github.com/pingcap/tiflow/pkg/filter/expr_filter.go:335 +0xc8 github.com/pingcap/tiflow/pkg/filter.(*dmlExprFilterRule).shouldSkipDML(0xc005b4eea0, 0xc2585e9220, {{0x0, 0x0, 0x0}, {0xc2535df100, 0x60, 0x60}}, 0xc00289f2b0) github.com/pingcap/tiflow/pkg/filter/expr_filter.go:315 +0x7e8 github.com/pingcap/tiflow/pkg/filter.(*dmlExprFilter).shouldSkipDML(0xc002a08200?, 0xc2585e9220, {{0x0, 0x0, 0x0}, {0xc2535df100, 0x60, 0x60}}, 0xc00289f2b0) github.com/pingcap/tiflow/pkg/filter/expr_filter.go:428 +0x165 github.com/pingcap/tiflow/pkg/filter.(*filter).ShouldIgnoreDMLEvent(0xc002a08200, 0xc2585e9220, {{0x0, 0x0, 0x0}, {0xc2535df100, 0x60, 0x60}}, 0x1?) github.com/pingcap/tiflow/pkg/filter/filter.go:145 +0x125 github.com/pingcap/tiflow/cdc/entry.(*mounter).unmarshalAndMountRowChanged.func1(0xd8e30f?, 0x7c7, 0xc186093ea0, {0xc163923b69, 0xa, 0x2?}, 0xc003f8eaf0, {0x65973a05f6c0077, 0x65973a0628c023f, 0x7c7, …}) github.com/pingcap/tiflow/cdc/entry/mounter.go:177 +0x3fc github.com/pingcap/tiflow/cdc/entry.(*mounter).unmarshalAndMountRowChanged(0xc003f8eaf0, {0x47fdf88, 0xc00253ad00}, 0xc186093ea0) github.com/pingcap/tiflow/cdc/entry/mounter.go:190 +0x48c github.com/pingcap/tiflow/cdc/entry.(*mounter).DecodeEvent(0xc003f8eaf0, {0x47fdf88, 0xc00253ad00}, 0xc23f9c9950) github.com/pingcap/tiflow/cdc/entry/mounter.go:106 +0x65 github.com/pingcap/tiflow/cdc/entry.(*mounterGroup).runWorker(0xc0032a0960, {0x47fdf88, 0xc00253ad00}) github.com/pingcap/tiflow/cdc/entry/mounter_group.go:109 +0x13f github.com/pingcap/tiflow/cdc/entry.(*mounterGroup).Run.func2() github.com/pingcap/tiflow/cdc/entry/mounter_group.go:79 +0x28 golang.org/x/sync/errgroup.(*Group).Go.func1() golang.org/x/sync@v0.1.0/errgroup/errgroup.go:75 +0x64 created by golang.org/x/sync/errgroup.(*Group).Go golang.org/x/sync@v0.1.0/errgroup/errgroup.go:72 +0xa5 panic: runtime error: index out of range [120] with length 96
有详细一点的日志吗?
我摇个人看一下
能给下 create table 和 delete 的 sql 吗?我尝试复现下