mirror of
https://github.com/apache/impala.git
synced 2025-12-19 18:12:08 -05:00
IMPALA-14408: Use regular path for Calcite planner instead of CalciteJniFrontend
When the --use_calcite_planner=true option is set at the server level, the queries will no longer go through CalciteJniFrontend. Instead, they will go through the regular JniFrontend, which is the path that is used when the query option for "use_calcite_planner" is set. The CalciteJniFrontend will be removed in a later commit. This commit also enables fallback to the original planner when an unsupported feature exception is thrown. This needed to be added to allow the tests to run properly. During initial database load, there are queries that access complex columns which throws the unsupported exception. Change-Id: I732516ca8f7ea64f73484efd67071910c9b62c8f Reviewed-on: http://gerrit.cloudera.org:8080/23523 Reviewed-by: Steve Carlin <scarlin@cloudera.com> Tested-by: Steve Carlin <scarlin@cloudera.com>
This commit is contained in:
@@ -278,6 +278,8 @@ DEFINE_validator(ssl_minimum_version, [](const char* flagname, const string& val
|
||||
return false;
|
||||
});
|
||||
|
||||
DEFINE_bool(use_calcite_planner, false, "By default this flag is false. If true, "
|
||||
"the Calcite planner will be used to compile queries.");
|
||||
DEFINE_int32(idle_session_timeout, 0, "The time, in seconds, that a session may be idle"
|
||||
" for before it is closed (and all running queries cancelled) by Impala. If 0, idle"
|
||||
" sessions are never expired. It can be overridden by the query option"
|
||||
@@ -2018,6 +2020,7 @@ void ImpalaServer::InitializeConfigVariables() {
|
||||
// Set idle_session_timeout here to let the SET command return the value of
|
||||
// the command line option FLAGS_idle_session_timeout
|
||||
default_query_options_.__set_idle_session_timeout(FLAGS_idle_session_timeout);
|
||||
default_query_options_.__set_use_calcite_planner(FLAGS_use_calcite_planner);
|
||||
// The next query options used to be set with flags. Setting them in
|
||||
// default_query_options_ here in order to make default_query_options
|
||||
// take precedence over the legacy flags.
|
||||
|
||||
Reference in New Issue
Block a user