binlog_row_image这个值改过吗,可以用mysqlbinlog命令解析下卡住的binlog位置看下内容
一直没改过
# at 177037823
#251208 15:15:54 server id 33479409 end_log_pos 177038477 CRC32 0x2f51481c Update_rows_v1: table id 6653 flags: STMT_END_F
BINLOG '
Kns2aRPx2v4BsgAAAP9hjQoAAP0ZAAAAAAEACmJ5ZF9mX3Byb2QADmJ5ZF9mX2N1c3RvbWVyADsI
Dw8ICAgPDw8PDwEPAQ8BAw8ICAgICAEPAQgBCAgICA8BAQgBCAgBAQEICAgIAw8PCAgPDw8PAQgP
DygsASwBlgA8ADwAPACWAAYAlgCWANwFuAuWADwAaAE8ADwAPAAsAQwAcP/////DAwQBBQAAAAAA
AgEhTsTZDA==
Kns2aRjx2v4BjgIAAI1kjQoAAP0ZAAAAAAEAO//////////7//////////sAAAAAAAAAAAKEFgAA
AAAAHwBGX0NVU1RPTUVSXzIwMjQxMTE1MTkwMzIzNzUyNDA2AABrAQAAAAAAAIwPAAAAAAAAAIQW
AAAAAAAJ5pyq5ZG95ZCNCzE1Mzg0OTM5OTc0AAAAAAFDAAABAAAAAAJEWdaNGwAAAAAAAAAAAAAA
AAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAHAAAAAAAAAAABXA8CReQBAAAAAAAAAAAAAIGf
yc2aAQAA/yOQR+QBAAADAO+8jAAAaPN9L5MBAAABAAAAAAAAAAAAAAAAAAAAAAECAJgPAAAAAAAA
AAAAAAAAAABo830vkwEAANWgyc2aAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAKEFgAAAAAAHwBGX0NVU1RPTUVSXzIwMjQxMTE1MTkwMzIzNzUyNDA2AABr
AQAAAAAAAIwPAAAAAAAAAIQWAAAAAAAJ5pyq5ZG95ZCNCzE1Mzg0OTM5OTc0AAAAAAFDAAABAAAA
AAJEWdaNGwAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAHAAAAAAAAAAAB
XA8CReQBAAAAAAAAAAAAAIGfyc2aAQAA/yOQR+QBAAADAO+8jAAAaPN9L5MBAAABAAAAAAAAAAAA
AAAAAAAAAAECAJgPAAAAAAAAAAAAAAAAAABo830vkwEAAIIe0fyaAQAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcSFEv
### UPDATE `byd_f_prod`.`byd_f_customer`
### WHERE
### @1=1475586 /* LONGINT meta=0 nullable=0 is_null=0 */
### @2='F_CUSTOMER_20241115190323752406' /* VARSTRING(300) meta=300 nullable=0 is_null=0 */
### @3='' /* VARSTRING(300) meta=300 nullable=0 is_null=0 */
### @4=363 /* LONGINT meta=0 nullable=0 is_null=0 */
### @5=3980 /* LONGINT meta=0 nullable=1 is_null=0 */
### @7='未命名' /* VARSTRING(150) meta=150 nullable=1 is_null=0 */
### @8='15384939974' /* VARSTRING(60) meta=60 nullable=0 is_null=0 */
### @9='' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
### @10='' /* VARSTRING(60) meta=60 nullable=1 is_null=0 */
### @11='' /* VARSTRING(150) meta=150 nullable=1 is_null=0 */
### @12=0 /* TINYINT meta=0 nullable=1 is_null=0 */
### @13='C' /* VARSTRING(6) meta=6 nullable=1 is_null=0 */
### @14=0 /* TINYINT meta=0 nullable=1 is_null=0 */
### @15='' /* VARSTRING(150) meta=150 nullable=1 is_null=0 */
### @16=1 /* TINYINT meta=0 nullable=1 is_null=0 */
### @17=0 /* INT meta=0 nullable=1 is_null=0 */
### @18='DY' /* VARSTRING(150) meta=150 nullable=1 is_null=0 */
### @19=1805782 /* LONGINT meta=0 nullable=1 is_null=0 */
### @20=0 /* LONGINT meta=0 nullable=1 is_null=0 */
### @21=1 /* LONGINT meta=0 nullable=1 is_null=0 */
### @22=1 /* LONGINT meta=0 nullable=1 is_null=0 */
### @23=0 /* LONGINT meta=0 nullab.............................................
### SET
### @1=1475586 /* LONGINT meta=0 nullable=0 is_null=0 */
### @2='F_CUSTOMER_20241115190323752406' /* VARSTRING(300) meta=300 nullable=0 is_null=0 */
### @3='' /* VARSTRING(300) meta=300 nullable=0 is_null=0 */
### @4=363 /* LONGINT meta=0 nullable=0 is_null=0 */
### @5=3980 /* LONGINT meta=0 nullable=1 is_null=0 */
### @6=1475584 /* LONGINT meta=0 nullable=1 is_null=0 */
### @7='未命名' /* VARSTRING(150) meta=150 nullable=1 is_null=0 */
### @8='15384939974' /* VARSTR....................................................
### @56=0 /* TINYINT meta=0 nullable=0 is_null=0 */
### @57=0 /* LONGINT meta=0 nullable=0 is_null=0 */
### @58='' /* VARSTRING(300) meta=300 nullable=0 is_null=0 */
# at 177038477
#251208 15:15:54 server id 33479409 end_log_pos 177038644 CRC32 0x5da91a37 Table_map: `db1`.`table1` mapped to number 5192
就是个update语句
deploy/tidb-/conf/tidb.toml allow-expression-index看下
RIGHT函数被认为风险?
请问楼主现在解决了吗?
表可以加一个字段 直接存 right(4) 的, 然后不用这个函数. 哈哈,我们就是这么干的
用的越高端,坑越多
还没解决。
我们的情况复杂,上游数据库不归我管。仅有同步权限
先修改下配置文件再重启试试
哦, 就是你们只是同步配置和数据, 这是什么场景
dm集群、tidb集群都重启过。
任务删除数据重新同步数次。每次都是刚开始增量同步就卡住,binlog位置都是dml并没有ddl。
1、使用和上游完全一样的表结构,允许创建表达式索引。报错:allow-expression-index 没开启。问题是已经开启,不然表达式索引也创建不了
2、使用普通索引替换上游的表达式索引。报错:上游 binlog_row_image 配置不是full。问题是上游这个配置自始至终都是full。
表结构是否同步都不重要。即使过滤掉所有DDL,任务也会在增量同步节点卡住,而且卡住的点位就是普通的dml。上下游表结构字段数据完全能对上,就是卡住报错
我这边实际测了一下,对于right这个expression index,dm的parser应该还没有支持。提了个issue,等修复吧。
https://github.com/pingcap/tiflow/issues/12461
1 个赞
是不是这个参数没有生效,重启一下
没有看出来跟dm有啥关系呢
关于这个问题,处理row故障的关键是找到软件bug。 如果还有其他问题,欢迎提出。