TiDB4.0.5版本,TiFlash查询失败,查询时间长

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
生产环境

【概述】 场景 + 问题概述
所有TiFlash查询,查询失败

【背景】 做过哪些操作
设置过大事务, txn-total-size-limit 参数,然后回滚
【现象】 业务和数据库现象
业务查询失败,所有业务sql出现 Region is unavailable
【问题】 当前遇到的问题

【业务影响】
全部TiFlash查询不可用
【 TiDB 版本】
4.0.5
【附件】 相关日志及监控(https://metricstool.pingcap.com/)


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

1 个赞

停止了原先的TiFlash节点,新增加了一台,重新开启TiFlash,部分业务sql恢复,大部分还是出现Region is unavailable问题

咱们的 tiflash 副本数是几? 现在 tiflash 的运行是否正常?有几个 tiflash?

最好的办法是 设置 tiflash replica 为0 后,再次开启

之前是副本数是3,二个flash节点
目前副本数是1,开启tiflash部分表正常,部分不正常,一个flash节点

这个已经尝试过了,目前还是存在部分正常和不正常

先问一下,这个 集群发生过故障?背景能描述一下不

没有故障 就是 tiup cluster reload 为了调整max-txn-ttl为40分钟以后 tiflash 就disconnected状态了 再次重启就是down状态 改回max-txn-ttl参数也没用

DB::TiFlashApplyRes DB::HandleWriteRaftCmd(const DB::TiFlashServer*, DB::WriteCmdsView, DB::RaftCmdHeader): Code: 49, e.displayText() = DB::Exception: Handle: 114702345, Prewrite ts: 427984369029480455 can not found in default cf
for key: [74 80 0 0 0 0 0 5d ff f0 5f 72 80 0 0 0 6 ff d6 38 9 0 0 0 0 0 fa fa f 7e 7b cf b ff fd], e.what() = DB::Exception, Stack trace:

下线后 一直是pending状态 无法下线

(8229, ‘TTL manager has timed out, pessimistic locks may expire, please commit or rollback this transaction’)

目前还有个报错

批量写入速度特别慢,有时候成功,有时候会出(8229, ‘TTL manager has timed out, pessimistic locks may expire, please commit or rollback this transaction’)异常信息,导致失败

先看 tiflash 的问题吧

tiflash 的几个日志,帮提供一下

咱们有用 br 或 lighting 导数据吗

这是我们停掉原来的TiFlash,新加的一台TiFlash的日志,有使用过lighting 导过数据。
日志压缩后还是超过上限,我放到蓝奏云网盘了。
https://www.lanzouw.com/iFFdLuj6xmf
麻烦看下

咱们 lighting 导入数据完成了吗?等完成之后,把有问题的 tiflash 缩容一下,再扩容吧(这个问题高版本 v5.0.3 之后的版本有改善)

通过这个官方教程缩容 https://docs.pingcap.com/zh/tidb/v4.0/scale-tidb-using-tiup
现在并没有出现“TiFlash 节点对应的 store 消失”或者“state_name 变成 Tombstone”
而是offline的一个状态 请问 我现在是通过下一步 curl -X POST 'http:///pd/api/v1/store/<store_id>/state?state=Tombstone’去删除tiflash节点吗
image

你下线需要保证2个:表的 tiflash replica 关掉为0,或者你剩余的 tiflash 数量 > 你的副本数(还要保持空间足够之类)https://docs.pingcap.com/zh/tidb/dev/scale-tidb-using-tiup

是的这个前提我在教程第一步看到了 并已经满足条件 现在在做教程做第三步了 出现教程描述的Tombstone 之外的状态 现在不敢往下操作 现在的状态是offline 已使用容量也为0 感觉像是这台节点已经不存数据了