Doris 集成 Ranger 后,部分查询出现errCode = 2, detailMessage = Nereids cost too much time ( 43s > 30s

Viewed 19

偶发,集中在某几个用户。权限是确认已经有的。简单的点查 sql 也会出现。部分用户报错频繁。Doris 版本 2.1.9
Ranger 版本 2.4.0

1 Answers

进一步排查发现是一台最老的 fe 的特定 sql 概率会出现问题。具体报错是

fe.warn.log:2025-09-03 00:08:32,790 WARN (mysql-nio-pool-14439|108187) [StmtExecutor.executeByNereids():795] Nereids plan query failed:
fe.warn.log:org.apache.doris.nereids.exceptions.DoNotFallbackException: Nereids cost too much time ( 40s > 30s
fe.warn.log:    at org.apache.doris.nereids.jobs.scheduler.SimpleJobScheduler.executeJobPool(SimpleJobScheduler.java:40) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.jobs.rewrite.RootPlanTreeRewriteJob.execute(RootPlanTreeRewriteJob.java:66) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.jobs.executor.AbstractBatchJobExecutor.execute(AbstractBatchJobExecutor.java:139) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.rules.rewrite.RewriteCteChildren.visit(RewriteCteChildren.java:73) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.rules.rewrite.RewriteCteChildren.visit(RewriteCteChildren.java:57) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.trees.plans.visitor.PlanVisitor.visitLogicalSink(PlanVisitor.java:121) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.trees.plans.visitor.SinkVisitor.visitLogicalResultSink(SinkVisitor.java:111) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.trees.plans.logical.LogicalResultSink.accept(LogicalResultSink.java:60) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.rules.rewrite.RewriteCteChildren.rewriteRoot(RewriteCteChildren.java:68) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.jobs.rewrite.CustomRewriteJob.execute(CustomRewriteJob.java:61) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.jobs.executor.AbstractBatchJobExecutor.execute(AbstractBatchJobExecutor.java:139) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.NereidsPlanner.lambda$rewrite$6(NereidsPlanner.java:371) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.NereidsPlanner.keepOrShowPlanProcess(NereidsPlanner.java:778) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.NereidsPlanner.rewrite(NereidsPlanner.java:371) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.NereidsPlanner.planWithoutLock(NereidsPlanner.java:244) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.NereidsPlanner.planWithLock(NereidsPlanner.java:209) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.NereidsPlanner.plan(NereidsPlanner.java:129) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:792) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:org.apache.doris.common.NereidsException: Nereids cost too much time ( 40s > 30s
fe.warn.log:    at org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:796) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:Caused by: org.apache.doris.nereids.exceptions.DoNotFallbackException: Nereids cost too much time ( 40s > 30s
fe.warn.log:    at org.apache.doris.nereids.jobs.scheduler.SimpleJobScheduler.executeJobPool(SimpleJobScheduler.java:40) ~[doris-fe.jar:1.2-SNAPSHOT]
fe.warn.log:    at org.apache.doris.nereids.jobs.rewrite.RootPlanTreeRewriteJob.execute(RootPlanTreeRewriteJob.java:66) ~[doris-fe.jar:1.2-SNAPSHOT]