ligthning local backend 导入报错,panic: runtime error: index out of range [0] with length 0

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

  • 【TiDB 版本】:v4.02
  • 【问题描述】:
    通过mydump导出sql后 ,再用lightngin导入 报错
    panic: runtime error: index out of range [0] with length 0

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

  1. 请问 lightning 使用什么方式导入? backend 还是 import
  2. lightning 版本是什么?
  3. 麻烦上传下完整的报错日志,多谢。

lightning 版本Release Version: v4.0.2
采用backend的local模式进行导入
配置文件如下:
[lightning]

转换数据的并发数,默认为逻辑 CPU 数量,不需要配置。

混合部署的情况下可以配置为逻辑 CPU 的 75% 大小。

region-concurrency =

日志

level = “info”
file = “tidb-lightning.log”

[tikv-importer]

backend 设置为 local 模式

backend = “local”

设置本地临时存储路径

sorted-kv-dir = “/home/tidb/sorted-kv-dir”

[mydumper]

Mydumper 源数据目录。

data-source-dir = “/cetc/nas/dump/mysql”
#no-schema = true
[tidb]

目标集群的信息。tidb-server 的监听地址,填一个即可。

host = “xxx”
port = 4000
user = “xxx”
password = “xxx”

表架构信息在从 TiDB 的“状态端口”获取。

status-port = 10080
sql-mode = “”

报错日志如下:
Verbose debug logs will be written to /tmp/lightning.log.2020-08-07T10.37.22+0800.

[2020/08/07 10:37:22.766 +08:00] [INFO] [client.go:149] ["[pd] create pd client with endpoints"] [pd-address="[172.16.108.116:2379]"]
[2020/08/07 10:37:22.769 +08:00] [INFO] [base_client.go:226] ["[pd] update member urls"] [old-urls="[http://172.16.108.116:2379]"] [new-urls="[http://172.16.108.116:2379,http://172.16.118.5:2379,http://172.16.118.8:2379]"]
[2020/08/07 10:37:22.769 +08:00] [INFO] [base_client.go:242] ["[pd] switch leader"] [new-leader=http://172.16.108.116:2379] [old-leader=]
[2020/08/07 10:37:22.769 +08:00] [INFO] [base_client.go:92] ["[pd] init cluster id"] [cluster-id=6857801219183046624]
panic: runtime error: index out of range [0] with length 0

goroutine 344 [running]:
github.com/pingcap/tidb-lightning/lightning/backend.(*local).WriteToTiKV(0xc000a4f170, 0x2032e80, 0xc001ed8100, 0xc000bbdb30, 0xc001d020a0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/jenkins/agent/workspace/build-linux-amd64-4.0/go/src/github.com/pingcap/tidb-lightning/lightning/backend/local.go:442 +0x21a2
github.com/pingcap/tidb-lightning/lightning/backend.(*local).WriteAndIngestPairs(0xc000a4f170, 0x2032e80, 0xc001ed8100, 0xc000bbdb30, 0xc001d020a0, 0x8, 0x1b)
/home/jenkins/agent/workspace/build-linux-amd64-4.0/go/src/github.com/pingcap/tidb-lightning/lightning/backend/local.go:850 +0x77
github.com/pingcap/tidb-lightning/lightning/backend.(*local).writeAndIngestByRange(0xc000a4f170, 0x2032e80, 0xc001c97cc0, 0xc000bbdb30, 0xc0012107e0, 0x13, 0x13, 0xc001210820, 0x13, 0x14, …)
/home/jenkins/agent/workspace/build-linux-amd64-4.0/go/src/github.com/pingcap/tidb-lightning/lightning/backend/local.go:811 +0x12f2
github.com/pingcap/tidb-lightning/lightning/backend.(*local).WriteAndIngestByRanges.func1(0xc000a4f170, 0xc001c9af00, 0xc000bbdb30, 0xc0012107e0, 0x13, 0x13, 0xc001210820, 0x13, 0x14, 0xc001cdc120, …)
/home/jenkins/agent/workspace/build-linux-amd64-4.0/go/src/github.com/pingcap/tidb-lightning/lightning/backend/local.go:921 +0x16a
created by github.com/pingcap/tidb-lightning/lightning/backend.(*local).WriteAndIngestByRanges
/home/jenkins/agent/workspace/build-linux-amd64-4.0/go/src/github.com/pingcap/tidb-lightning/lightning/backend/local.go:915 +0x449

@matthew0924 感谢反馈,这个是已知问题,已经在 https://github.com/pingcap/tidb-lightning/pull/338 这个 pr 里面修复了。因为 tidb-lightning 的 local backend 是在 v4.0.3 版本正式发布的,之前的版本会存在一些 bug, 麻烦更新一下最新的版本

使用v4.0.3版本已导入,谢谢:call_me_hand:

:clap:

:+1:

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。