This is an automated email from the ASF dual-hosted git repository. jakevin pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.0 by this push: new c028679c134 [feature](Nereids): InferPredicates support In (#29458) (#30525) c028679c134 is described below commit c028679c1340d085c5c239f590f05c8611831012 Author: jakevin <jakevin...@gmail.com> AuthorDate: Tue Jan 30 14:23:29 2024 +0800 [feature](Nereids): InferPredicates support In (#29458) (#30525) (cherry picked from commit 7a0734dbd60effa676d87bf5a5b7ca516e134d52) --- .../doris/nereids/jobs/scheduler/SimpleJobScheduler.java | 12 ++++++++---- .../src/main/java/org/apache/doris/qe/SessionVariable.java | 3 +++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/scheduler/SimpleJobScheduler.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/scheduler/SimpleJobScheduler.java index c52e2e90f13..ec751bdab2d 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/scheduler/SimpleJobScheduler.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/scheduler/SimpleJobScheduler.java @@ -19,6 +19,7 @@ package org.apache.doris.nereids.jobs.scheduler; import org.apache.doris.nereids.CascadesContext; import org.apache.doris.nereids.jobs.Job; +import org.apache.doris.qe.SessionVariable; import java.util.concurrent.TimeUnit; @@ -29,11 +30,14 @@ public class SimpleJobScheduler implements JobScheduler { @Override public void executeJobPool(ScheduleContext scheduleContext) { JobPool pool = scheduleContext.getJobPool(); + CascadesContext context = (CascadesContext) scheduleContext; + SessionVariable sessionVariable = context.getConnectContext().getSessionVariable(); while (!pool.isEmpty()) { - CascadesContext context = (CascadesContext) scheduleContext; - if (context.getConnectContext().getSessionVariable().enableNereidsTimeout - && context.getStatementContext().getStopwatch().elapsed(TimeUnit.MILLISECONDS) > 5000) { - throw new RuntimeException("Nereids cost too much time ( > 5s )"); + if (sessionVariable.enableNereidsTimeout + && context.getStatementContext().getStopwatch().elapsed(TimeUnit.MILLISECONDS) + > sessionVariable.nereidsTimeoutSecond * 1000L) { + throw new RuntimeException( + "Nereids cost too much time ( > " + sessionVariable.nereidsTimeoutSecond + "s )"); } Job job = pool.pop(); job.execute(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java index 036d8da6836..616368a3778 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java @@ -972,6 +972,9 @@ public class SessionVariable implements Serializable, Writable { @VariableMgr.VarAttr(name = ENABLE_NEW_SHUFFLE_HASH_METHOD) public boolean enableNewShuffleHashMethod = true; + @VariableMgr.VarAttr(name = "nereids_timeout_second", needForward = true) + public int nereidsTimeoutSecond = 5; + @VariableMgr.VarAttr(name = ENABLE_PUSH_DOWN_NO_GROUP_AGG) public boolean enablePushDownNoGroupAgg = true; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org