tidb4.0进行升级,重启tiflash时提示重启失败:<Error> Application: DB::Exception: Path "/data/tidb-data/tiflash-9000//data/price_manage/lbmmaterials_tidb/" is missing.

tiup-cluster-debug-2020-06-04-20-21-14.log (188.4 KB)

  1. 查看debug 日志 “error”: “failed to upgrade: failed to restart tiflash: \t10.74.106.27 failed to restart: timed out waiting for port 9000 to be started after 1m0s: timed out waiting for port 9000 to be started after 1m0s”, “errorVerbose”: "timed out waiting for port 9000 to be started after

  2. 请问是从哪个版本升级的?

  3. 麻烦上传 tiflash 日志,多谢。

当前版本4.0.0-rc。Desktop.zip (1.8 MB)

从 TiFlash 日志中看到的信息是

020.06.05 08:16:08.737175 [ 1 ] <Information> IDAsPathUpgrader: Detect 0 cyclic renaming
2020.06.05 08:16:08.737217 [ 1 ] <Information> IDAsPathUpgrader: table `price_manage`.`lbmmaterials_tidb` to `db_45`.`t_1196` renaming
2020.06.05 08:16:10.665985 [ 1 ] <Error> Application: DB::Exception: Path "/data/tidb-data/tiflash-9000//data/price_manage/lbmmaterials_tidb/" is missing.
2020.06.05 08:16:10.666035 [ 1 ] <Information> Application: shutting down
2020.06.05 08:16:10.666142 [ 2 ] <Information> BaseDaemon: Stop SignalListener thread
  1. 麻烦 ls /data/tidb-data/tiflash-9000//data/price_manage 这个路径看下,看是否存在
  2. 方便的话,上传一下 TiFlash 部署目录下的 conf/tiflash.toml 文件,我们看下配置

1、路径是存在的
image
2、配置文件tiflash.toml (1.8 KB)

另外这个表应该是之前测试用的,后来删除了lbmmaterials_tidb

你好,
麻烦执行 grep -r 'lbmmaterials_tidb' '/data/tidb-data/tiflash-9000/metadata/' 确认下这个表名出现在哪个文件中
然后上传下该 sql 文件,我们 check 下文件哈~

lbmmaterials.sql (6.8 KB)

是 rename 的时候部分元信息没有更新导致的。
可以参考这里的做法 TiUP升级TiFlash重启失败解决方案 ,把 lbmmaterials.sql 文件中所有 lbmmaterials_tidb 替换为 lbmmaterials,然后再重启 TiFlash 进程试试。

重启之后在 TiDB 通过 select * from information_schema.cluster_info; 确认下各个组件是否顺利升级哈~

按照这个解决思路,我排除了另外两张表的错误,但目前仍重启失败


2020.05.30 17:42:53.151707 [ 9 ] <Information> SchemaBuilder: The price_manage.lbmdetails will be renamed to price_manage.lbmdetail

看到日志里面有把 lbmdetails 重命名为 lbmdetail (去除了表名末尾的s)的操作。麻烦确认下是否存在类似下面的路径

/data/tidb-data/tiflash-9000/data/price_manage/lbmdetail
/data/tidb-data/tiflash-9000/data/price_manage/lbmdetail_xxx

无这样的路径
image

该路径下缺少lbmdetails

data目录下存在 lbmdetails_200530,但是缺少 lbmdetails 是吗?这样的话可以删除 metadata 文件夹中的 /data/tidb-data/tiflash-9000/metadata/price_manage/lbmdetails.sql 这一个文件,然后再重启。

顺利升级后,相应的 schema 会重新从 TiDB 同步到 TiFlash

ls /data/tidb-data/tiflash-9000/data/price_manage/lbmdetails_200530
ls /data/tidb-data/tiflash-9000/data/t_121

请确认下当前有没有这两个目录,有的话,里面有哪些文件

需要删除吗?

/data/tidb-data/tiflash-9000/data/t_121 这个目录删除了,然后重启试试

再截上面大概20行的日志,我看看上下文发生了什么