错误 [9012] [HY000]: TiFlash server timeout

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
(tidb+tikv+pd)3 + TiFlash1 +centos 7
【概述】场景+问题概述
正在测试tpch性能,测q5时出现错误 [9012] [HY000]: TiFlash server timeout,tiflash报错timeout

好像是path参数的问题,也看过其他帖子,这个要怎么设置呢
【背景】做过哪些操作
【现象】业务和数据库现象
【业务影响】
【TiDB 版本】
【附件】

  1. TiUP Cluster Display 信息

  2. TiUP Cluster Edit Config 信息

  3. TiDB- Overview 监控

  • 对应模块日志(包含问题前后1小时日志)
3 个赞

检查一下内存是否oom

2 个赞

1、麻烦提供下 TiDB 的版本
2、提供下当时TiDB-server 日志

2 个赞

oom 应该不是问题,其他语句有报的直接用set @@tidb_mem_quota_query = 10 << 30解决了,唯独Q5报Tiflash timeout

2 个赞
  1. TIDB版本

  2. TIDB-server日志,找了其中一台
    tidb_cover.log (12.9 MB)

2 个赞

能试试下面的测试场景吗?
1、重启集群,然后直接运行q5
2、如果第一个场景跑不出来(1分钟内),打断,重启集群,开两个窗口,第一个窗口运行q5,第二个窗口也立即跑q5,看看第二个窗口能出结果不

2 个赞

检查一下配置文件 tiflash.toml 中path 路径对应目录是否有权限和目录是否正确。

1 个赞

我是直接拓扑布署,用的是一个yaml,这个参数怎么配

1 个赞

1、你好,这个测试是可复现的吗?
2、如果可复现,麻烦提供跑q5 过程中的 TiFlash的日志和TiFlash的监控。https://metricstool.pingcap.com/#backup-with-dev-tools

1 个赞

部署在内网没办法直接访问
tiflash报错如下

这个path在之前就问了,没人答吖。。

tikv中报了很多连接不上Tiflash的日志,但看了下端口应该没问题的

1 个赞

监控数据导出可以按照:https://metricstool.pingcap.com/#backup-with-dev-tools 的指引导出。

确定网络是通的不?做个telnet试试呢,看日志是Connection refused

1 个赞

你好 用的三个节点,下面放了节点2的tiflash日志,其余看了下也都差不多tiflash_error.log (215.5 KB) [tiflash1.log|attachmenttidb-test2-TiFlash-Summary_2022-02-17T02_39_51.837Z.json (1.5 MB) ](upload://oNCYGnk2wUZHAL06HTomW5qpcFR.log) (21.0 MB)

1 个赞

tiflash1.log (21.0 MB)

tidb-test2-TiFlash-Summary_2022-02-17T02_39_51.837Z.json (1.5 MB)

tiflash_error.log (215.5 KB)

上传有问题,重新下面发了一次

帖子别沉吖!!!

1 个赞

确认下只有 Q5 执行有问题对吧,看起来大概是已知问题,https://github.com/pingcap/tidb/issues/28272 由于统计信息 lazy loading 导致 tidb 重启后第一次执行时选取的执行计划不准 ,按照该执行计划,tiflash 会在执行时遇到 protobuf 序列化长度不能超过 2G 的问题,对于 5.3.0 之前的版本该问题会导致 query 失败, 但是5.3.0 发送数据相关逻辑有修改,导致 tiflash crash。
tiflash 侧 5.3.1 会修复该问题避免 tiflash crash,tidb 侧预计 5.4.0 可以修复: https://github.com/pingcap/tidb/pull/30026。

5.4.0 已经发布了,如果是测试环境,可以升级试试看。如果是正式环境,建议 playground 启动一个 5.4.0 版本测试一下~

刚刚执行Tiup cluster upgrade的报错,是同一个原因么

已经升级了,报错信息变了

MySQL里有packet相关的参数,TiDB里应该也有,设置的大一些再试试