乐观事务下的Key is locked (will clean up) primary_lock

2 中 tidb 没有 txnlockfast 关键字应该是因为你们配置了 max execute time,SQL 被 kill 了,没有到 txnlockfast backoff 记录的代码逻辑,你们可以 execute time 限制去掉,来观察和排查。
调整悲观事务,可以试试,但是收益不一定大。
减小事务的大小,特别是减少事务中的写操作数量,可以有效减少冲突和锁等待时间
虽然 TiDB 4.0 默认使用乐观锁,但在高冲突场景下,你可以考虑适当的业务逻辑调整或在应用层实现重试逻辑。

所以还是先去掉 execute time 限制,看看 tidb.log 能不能找到相关信息,优化业务模型吧。TiDB 锁冲突问题处理 | PingCAP 归档文档站