v8.5.1→v8.5.6,TiDB 针对 Local Stream 流式下发、pipeline 执行队列、结果集推送逻辑是否有内核改动,引发客户端拉取阻塞?
1 个赞
8.5.1→8.5.6 确实改了 LocalStream、Pipeline、结果集推送内核逻辑,是 JDBC 耗时暴涨根因,改动集中在 8.5.3~8.5.5 小版本,和你 local_stream/pipeline_queue_wait/fetch 等待完全吻合。
8.5.1~8.5.6 确实落地了 LocalStream、Distsql Pipeline 调度、Coprocessor 结果流式下发三层内核重构,是 JDBC 耗时暴涨(客户端 10s~300s、TiDB 客户端 100ms)、pipeline_queue_wait/fetch and wait/min/max_local_stream耗时飙升的版本改动根源,本质是新版本**服务端拉取策略由「全量预加载」改成「客户端驱动的按需流式取数」,和 JDBC 默认非流式取数模型不兼容
可以先用 TiDB Dashboard 的 SQL 分析看下慢查询,定位问题的大概范围。具体报错信息贴出来比较好帮忙分析。
此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。