Hello Joe McDonnell, Impala Public Jenkins,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/23900
to look at the new patch set (#8).
Change subject: IMPALA-14488: Calcite planner: Support fallback to Original
planner
......................................................................
IMPALA-14488: Calcite planner: Support fallback to Original planner
Introduced the query options PLANNER and FALLBACK_PLANNER which are
of type TPlannerType
The 3 options for TPlannerType are:
ORIGINAL (default) : Use the Original planner for queries.
CALCITE : Use the Calcite planner for queries.
NONE : Convenient option for setting the FALLBACK_PLANNER.
This should never be used for the PLANNER option.
The Calcite planner currently does not support DDL and other various
queries (e.g. complex types). If a known unsupported query is detected,
the original planner will be used regardless of what is chosen for
FALLBACK_PLANNER.
The fallback planner will allow for easier transition for users who
want to use the new Calcite planner without having to worry about
backward compatibility issues that the compiler doesn't support.
One example that is currently not supported (in runtime_planners.test)
is the "ignore nulls" phrase which needs to be inside the parens for
Impala, but outside the parens for the Calcite parser.
At the time of this commit, there are also various compiler exceptions
thrown for Calcite which are not yet supported. The PLANNER=CALCITE
and FALLBACK_PLANNER=ORIGINAL options are set if the
--use_calcite_planner=true server option is specified. This will allow
easier transitioning to the Calcite planner because the user will be
assured that even if there is a compilation failure in Calcite,
their existing query will still run with the original planner.
Change-Id: Id1fdc5ef92fff84e89af0e19c4246cc15e2ea823
---
M be/src/service/impala-server.cc
M be/src/service/query-options.cc
M be/src/service/query-options.h
M common/thrift/ImpalaService.thrift
M common/thrift/PlanNodes.thrift
M common/thrift/Query.thrift
M fe/src/main/java/org/apache/impala/service/Frontend.java
M
java/calcite-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java
M
java/calcite-planner/src/test/java/org/apache/impala/calcite/planner/TpcdsCpuCostPlannerTest.java
M
java/calcite-planner/src/test/java/org/apache/impala/planner/CalcitePlannerTest.java
A testdata/workloads/functional-query/queries/QueryTest/fallback_planner.test
M tests/authorization/test_ranger.py
M tests/custom_cluster/test_calcite_planner.py
13 files changed, 306 insertions(+), 74 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/00/23900/8
--
To view, visit http://gerrit.cloudera.org:8080/23900
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id1fdc5ef92fff84e89af0e19c4246cc15e2ea823
Gerrit-Change-Number: 23900
Gerrit-PatchSet: 8
Gerrit-Owner: Steve Carlin <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Steve Carlin <[email protected]>