已经启用悲观锁的情况下,还是会存在 error="[kv:9007]Write conflict ,是什么情况?

  • 【TiDB 版本】:v3.0.12
  • 【问题描述】:
    已经启用悲观锁的情况下,还是会存在 error="[kv:9007]Write conflict ,是什么情况?

[2020/06/29 16:53:44.394 +08:00] [WARN] [session.go:675] [sql] [conn=1406687] [label=general] [error="[kv:9007]Write conflict, txnStartTS=417705708528074753, conflictStartTS=417705708514967557, conflictCommitTS=417705708567396354, key={tableID=1181, handle=168942705412692766} primary={tableID=1181, handle=168942705063191934} [try again later]"] [txn=“Txn{state=invalid}”]

tikv 日志中也有相关的冲突日志:
[2020/06/29 17:04:22.614 +08:00] [WARN] [endpoint.rs:454] [error-response] [err=“locked primary_lock: 74800000000000049D5F728257E257A6A0D461 lock_version: 417705874307940356 key: 74800000000000049D5F7282581419489A4C88 lock_ttl: 3787 txn_size: 6”]

  1. 请问您有使用 DM 同步吗?
  2. 请问使用的什么级别? 默认级别的事务吗?

没有使用DM

请查看是否有这些情况,比如autocommit不支持悲观锁,多谢。
https://docs.pingcap.com/zh/tidb/v4.0/pessimistic-transaction#和-mysql-innodb-的差异

请问这个跟使用dm 有什么关系。

我在使用dm 同步数据的时候确实出现很多这种write conflict,如何解读这种情况?