MCPcopy Create free account
hub / github.com/apache/impala / ExecDdlRequest

Method ExecDdlRequest

be/src/service/client-request-state.cc:914–939  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

912}
913
914Status ClientRequestState::ExecDdlRequest() {
915 string op_type = catalog_op_type() == TCatalogOpType::DDL ?
916 PrintValue(ddl_type()) : PrintValue(catalog_op_type());
917 bool async_ddl = ShouldRunExecDdlAsync();
918 bool async_ddl_enabled = exec_request().query_options.enable_async_ddl_execution;
919 string exec_mode = (async_ddl && async_ddl_enabled) ? "asynchronous" : "synchronous";
920
921 summary_profile_->AddInfoString("DDL Type", op_type);
922 summary_profile_->AddInfoString("DDL execution mode", exec_mode);
923 VLOG_QUERY << "DDL exec mode=" << exec_mode;
924
925 if (!async_ddl) return ExecDdlRequestImplSync();
926
927 if (async_ddl_enabled) {
928 // Transition the exec state out of INITIALIZED to PENDING to make available the
929 // runtime profile for the DDL. Later on in ExecDdlRequestImpl(), the state
930 // further transitions to RUNNING.
931 UpdateNonErrorExecState(ExecState::PENDING);
932 return Thread::Create("impala-server", "async_exec_thread_",
933 &ClientRequestState::ExecDdlRequestImpl, this, true /*exec in a worker thread*/,
934 &async_exec_thread_);
935 } else {
936 ExecDdlRequestImpl(false /*exec in the same thread as the caller*/);
937 return query_status_;
938 }
939}
940
941void ClientRequestState::ExecLoadDataRequestImpl(bool exec_in_worker_thread) {
942 const TExecRequest& exec_req = exec_request();

Callers

nothing calls this directly

Calls 3

PrintValueFunction · 0.85
CreateClass · 0.85
AddInfoStringMethod · 0.80

Tested by

no test coverage detected