【详述】
- 升级 3.4.0 版本后(升级前是 3.3.5 版本存算分离),少量 SQL 出现异常(以前跑数正常),查询发现执行计划不合理,对查询中的一部分外表(iceberg 表)的统计信息不正确
- 通过 show analyze status 查看到不少 Getting analyzing error. Detail message: Statistics query fail,
通过 FE 日志确认是因为 系统变量 query_queue_pending_timeout_second 执行 300s 超时导致,但本人并没有开启队列,为何会触发相关超时?
【背景】升级 3.4.0 版本后,以前一直正常跑数的 SQL 无法正常执行完成,执行计划不合理导致内存不足
【业务影响】少量 SQL 资源消耗剧增,难以跑数成功
【是否存算分离】是
【StarRocks版本】3.4.0
【集群规模】3fe(1 follower+2observer)+40cn(fe与cn混部)
【机器信息】8C/60G/万兆
【联系方式】xlrei@163.com
【附件】
当前已调整 query_queue_pending_timeout_second 为 1800
PS:
show analyze status where Status LIKE ‘%RUNNING%’ ;
ERROR 1064 (HY000): Getting analyzing error. Detail message: Only support equal predicate in show statement.
但以下写法无法查询到 RUNNING 的 ANALYZE 因为 Status 实际为 RUNNING (x%)
show analyze status where Status=‘RUNNING’;
Empty set