update语句未按预期更新所有行的数据

Bug 反馈
update语句未按预期更新所有行的数据,返回的受影响行数与满足条件的行数一致,但实际只更新了一部分

【 Bug 的影响】
业务数据未能按预期更新,导致数据产生差异,影响较严重

【可能的问题复现步骤】
系统执行更新数据操作,SQL如下:
update table_name set accounting_no = ‘ACCT0069V14466991’ where biz_bill_no = ‘21053100690000018206_B562101753835’;

biz_bill_no非主键,非唯一key,有索引

【看到的非预期行为】
返回的影响行数为15,但是查数据,只更新了14条,有1条未更新

【期望看到的行为】
返回的影响行数为15,实际更新成功的数据也是15行

【相关组件及具体版本】
TiDB 版本:5.7.25-TiDB-v4.0.9

【其他背景信息或者截图】
如集群拓扑,系统和内核版本,应用 app 信息等;如果问题跟 SQL 有关,请提供 SQL 语句和相关表的 Schema 信息;如果节点日志存在关键报错,请提供相关节点的日志内容或文件;如果一些业务敏感信息不便提供,请留下联系方式,我们与您私下沟通。

该表数据量:15亿+
现象为偶发,99%相同场景的数据更新没有问题

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

1.请问下你这边的事务模型是悲观事务还是乐观事务?
2.麻烦在业务低峰期检查下表上是否有索引数据不一致的问题:
ADMIN CHECK TABLE tbl_name [, tbl_name] ...;