loader数据导入中断

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

  • 【TiDB 版本】:3.0.8
  • 【问题描述】:

我使用loader导入数据到tidb集群,发现导入中断,最后的日志信息为:

我依次看了所有的tikv.log,发现都在循环报错

完整的循环报错日志 loop.log (16.8 KB)

请问这个是什么原因呢。

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

应该是 loader 的时候,tikv 负载比较大,可以通过监控看下当时的负载情况

可以尝试 loader 的时候通过 -t 降低并发度导入

但是我现在loader进程已经停掉了,这个错误还在不停的报呢

pd-ctl 执行一下 member 和 store 命令看下状态

结果member store.txt (3.0 KB)

现在集群状态正常吗,看起来像是有多个 tikv 实例共用了/home/tidb/deploy/data 目录,请问 tikv 部署的是单机多实例方式吗

我能正常连接集群做查询。

我的集群是三台tikv服务器,每个服务器上面只有一个tikv实例。

之前安装过tikv然后卸载了,现在的是在原来的服务器上安装的

集群简单的插入可以执行吗?

loader 导入的 -t 并发度设置的是多少,可以调低一点试下

我设置的并发是16,可以调低。

现在是我没有导入数据了,还在循环报错,是什么原因啊。

另外,我用ansible-playbook stop.yml命令把集群停止,但是tikv服务器上面,会自动拉起tikv进程,这是为什么呢

可以看下是不是有两个 systemctl 注册服务

ls -l /etc/systemd/system/tikv*

通过 systemctl stop 停止 tikv 服务

是有这些文件。

停止集群不能通过中控停止,只能通过具体的tikv服务器停止吗?

那是不是还需要在tidb和tipd服务器上面执行停止命令呢

正常是不需要的,可能是卸载的时候没有卸载干净环境导致的

是有多个 tikv*.service 吗,正常应该只有 tikv-{port}.service,可以将其他的 tikv*.server 删除,kill -9 tikv 进程,然后通过 tikv-{port}.service 服务手动启停 tikv 进程看下,如果手动通过 systemctl 能启停 tikv 进程,那样通过中控机也是可以停止的

确实,是我之前有这些没有删除,删除后,重启就正常了。非常感谢支持!

好的,不客气~