guojingfeng created IMPALA-10970:
------------------------------------

             Summary: Coordinator only query judgement logic should concern 
separated join build execution
                 Key: IMPALA-10970
                 URL: https://issues.apache.org/jira/browse/IMPALA-10970
             Project: IMPALA
          Issue Type: Bug
    Affects Versions: Impala 4.0.0
            Reporter: guojingfeng


IMPALA-8830 introduce the ability of executing trivail queries regardless the 
healthness of executor groups. Coordinatory only query judgment logic controls 
that whether a quer is trivail query or not. It take the query ExecRequest and 
check the plan only contains a single unpartitioned fragment. But join builder 
is scheduled at a separated fragment and colocated with join node after 
IMPALA-4224, in this case a query plan will contain two PlenExecInfo. I think 
*the coorinator only judgment logic should also check the jon build side* of 
the total execution plan.

Here is a bad case with query option MT_DOP>0: 
{code:java}
SELECT
STRAIGHT_JOIN * // Add straight_join hint to disable optimization
FROM
    ( SELECT '20210831' AS ts
     UNION ALL SELECT '20210901' AS ts
     UNION ALL SELECT '20210902' AS ts
     UNION ALL SELECT '20210903' AS ts ) t1
CROSS JOIN tpch.lineitem t2
LIMIT 100;
{code}
In debug build this query will fail and got core dump at hit the DECHECK at
/be/src/scheduling/scheduler.cc#L162
{code:java}
DCHECK(executor_config.group.NumExecutors() > 0 || exec_at_coord);
{code}
In release build this query will fail with message "Scheduling for executor 
group: empty group
(using coordinator only) with 0 executors"



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to