初始化数据失败

1、tidb log 中出现 write-conflict 错误,表示事务出现了冲突,tidb 是乐观事务模型,在 commit 时才会进行冲突检测。可以看下官网事务相关的文档:
https://pingcap.com/docs-cn/stable/reference/best-practices/optimistic-transaction/#乐观锁事务最佳实践

2、tidb.log 的日志中出现 [error=“failed to get leader from [http://127.0.0.1:2379]”] 报错可能是在向 pd 申请 tso 的时候出现了异常(tidb 一般的 DML 事务开启时,需要向 pd 申请两次 tso)。

3、tikv log 中出现 locked primary_lock 错误,是因为 tikv 定义了 lock 超时时间,如果在 ttl 内没有释放 lock 资源,则会强制清锁,出现相关报错。

4、从上面提供 prepare.tikv.log 看出有大量的下述报错:

[2019/12/05 05:13:38.109 +08:00] [ERROR] [util.rs:444] [“connect failed”] [err=“Grpc(RpcFailure(RpcStatus { status: DeadlineExceeded, details: Some(“Deadline Exceeded”) }))”] [endpoints=http://127.0.0.1:2379]

推测是 tikv 向 pd 发送请求没有得到响应,且连接失败。需要确认下 pd 当时的服务是否正常,pd 所在服务器的负载情况。以及使用 pd-ctl 查看下 pd 节点的状态:

./pd-ctl -u http://host1:2379 -i
>> member

另,强烈不建议其他服务和 tikv 混合部署,且在高并发下,可能造成的资源争用现象。