You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by ph...@apache.org on 2018/04/12 23:10:16 UTC

[4/6] impala git commit: IMPALA-5814: Remove startup flag to disable admission control

IMPALA-5814: Remove startup flag to disable admission control

Remove "--disable admission control" startup flag and its related
functionality and usage.

Cherry-picks: not for 2.x

Change-Id: I9bf4087ce03ca63f82fd27c6d94b578881b85d42
Reviewed-on: http://gerrit.cloudera.org:8080/9964
Reviewed-by: Tim Armstrong <ta...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


Project: http://git-wip-us.apache.org/repos/asf/impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/impala/commit/4438a85a
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/4438a85a
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/4438a85a

Branch: refs/heads/master
Commit: 4438a85a34eda96a23c01862589c89219de733fb
Parents: 318051c
Author: Bikramjeet Vig <bi...@cloudera.com>
Authored: Thu Jan 18 14:29:38 2018 -0800
Committer: Impala Public Jenkins <im...@cloudera.com>
Committed: Thu Apr 12 21:05:22 2018 +0000

----------------------------------------------------------------------
 be/src/common/global-flags.cc                     |  1 +
 be/src/runtime/coordinator.cc                     |  3 ++-
 be/src/runtime/exec-env.cc                        | 11 +++--------
 be/src/service/client-request-state.cc            | 11 +++++------
 bin/generate_minidump_collection_testdata.py      |  1 -
 tests/custom_cluster/test_admission_controller.py |  6 ++----
 6 files changed, 13 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/impala/blob/4438a85a/be/src/common/global-flags.cc
----------------------------------------------------------------------
diff --git a/be/src/common/global-flags.cc b/be/src/common/global-flags.cc
index b62170d..a15e91b 100644
--- a/be/src/common/global-flags.cc
+++ b/be/src/common/global-flags.cc
@@ -246,3 +246,4 @@ REMOVED_FLAG(rpc_cnxn_retry_interval_ms);
 REMOVED_FLAG(staging_cgroup);
 REMOVED_FLAG(suppress_unknown_disk_id_warnings);
 REMOVED_FLAG(use_statestore);
+REMOVED_FLAG(disable_admission_control);

http://git-wip-us.apache.org/repos/asf/impala/blob/4438a85a/be/src/runtime/coordinator.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/coordinator.cc b/be/src/runtime/coordinator.cc
index 5a3de5d..bdd02eb 100644
--- a/be/src/runtime/coordinator.cc
+++ b/be/src/runtime/coordinator.cc
@@ -784,7 +784,8 @@ void Coordinator::ReleaseAdmissionControlResourcesLocked() {
             << PrintId(query_ctx().query_id);
   AdmissionController* admission_controller =
       ExecEnv::GetInstance()->admission_controller();
-  if (admission_controller != nullptr) admission_controller->ReleaseQuery(schedule_);
+  DCHECK(admission_controller != nullptr);
+  admission_controller->ReleaseQuery(schedule_);
   released_admission_control_resources_ = true;
   query_events_->MarkEvent("Released admission control resources");
 }

http://git-wip-us.apache.org/repos/asf/impala/blob/4438a85a/be/src/runtime/exec-env.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/exec-env.cc b/be/src/runtime/exec-env.cc
index 57e1406..072baf3 100644
--- a/be/src/runtime/exec-env.cc
+++ b/be/src/runtime/exec-env.cc
@@ -79,7 +79,6 @@ DEFINE_int32(state_store_subscriber_port, 23000,
     "port where StatestoreSubscriberService should be exported");
 DEFINE_int32(num_hdfs_worker_threads, 16,
     "(Advanced) The number of threads in the global HDFS operation pool");
-DEFINE_bool(disable_admission_control, false, "Disables admission control.");
 DEFINE_bool(use_krpc, true, "If true, use KRPC for the DataStream subsystem. "
     "Otherwise use Thrift RPC.");
 
@@ -185,12 +184,8 @@ ExecEnv::ExecEnv(const string& hostname, int backend_port, int krpc_port,
         request_pool_service_.get()));
   }
 
-  if (FLAGS_disable_admission_control) {
-    LOG(INFO) << "Admission control is disabled.";
-  } else {
-    admission_controller_.reset(new AdmissionController(statestore_subscriber_.get(),
-        request_pool_service_.get(), metrics_.get(), backend_address_));
-  }
+  admission_controller_.reset(new AdmissionController(statestore_subscriber_.get(),
+      request_pool_service_.get(), metrics_.get(), backend_address_));
   exec_env_ = this;
 }
 
@@ -365,7 +360,7 @@ Status ExecEnv::Init() {
   if (scheduler_ != nullptr) {
     RETURN_IF_ERROR(scheduler_->Init(backend_address_, krpc_address_, ip_address_));
   }
-  if (admission_controller_ != nullptr) RETURN_IF_ERROR(admission_controller_->Init());
+  RETURN_IF_ERROR(admission_controller_->Init());
 
   // Get the fs.defaultFS value set in core-site.xml and assign it to configured_defaultFs
   TGetHadoopConfigRequest config_request;

http://git-wip-us.apache.org/repos/asf/impala/blob/4438a85a/be/src/service/client-request-state.cc
----------------------------------------------------------------------
diff --git a/be/src/service/client-request-state.cc b/be/src/service/client-request-state.cc
index a8b9bfa..f58eeb8 100644
--- a/be/src/service/client-request-state.cc
+++ b/be/src/service/client-request-state.cc
@@ -469,12 +469,11 @@ Status ClientRequestState::ExecQueryOrDmlRequest(
     RETURN_IF_ERROR(UpdateQueryStatus(status));
   }
 
-  if (exec_env_->admission_controller() != nullptr) {
-    status = exec_env_->admission_controller()->AdmitQuery(schedule_.get());
-    {
-      lock_guard<mutex> l(lock_);
-      RETURN_IF_ERROR(UpdateQueryStatus(status));
-    }
+  DCHECK(exec_env_->admission_controller() != nullptr);
+  status = exec_env_->admission_controller()->AdmitQuery(schedule_.get());
+  {
+    lock_guard<mutex> l(lock_);
+    RETURN_IF_ERROR(UpdateQueryStatus(status));
   }
 
   coord_.reset(new Coordinator(*schedule_, query_events_));

http://git-wip-us.apache.org/repos/asf/impala/blob/4438a85a/bin/generate_minidump_collection_testdata.py
----------------------------------------------------------------------
diff --git a/bin/generate_minidump_collection_testdata.py b/bin/generate_minidump_collection_testdata.py
index 5e3d9fb..021941b 100755
--- a/bin/generate_minidump_collection_testdata.py
+++ b/bin/generate_minidump_collection_testdata.py
@@ -74,7 +74,6 @@ CONFIG_FILE = '''-beeswax_port=21000
 -catalog_service_host=host2.example.com
 -catalog_service_port=26000
 -local_library_dir=/var/lib/impala/udfs
--disable_admission_control=true
 -disk_spill_encryption=false
 -abort_on_config_error=true'''
 

http://git-wip-us.apache.org/repos/asf/impala/blob/4438a85a/tests/custom_cluster/test_admission_controller.py
----------------------------------------------------------------------
diff --git a/tests/custom_cluster/test_admission_controller.py b/tests/custom_cluster/test_admission_controller.py
index e5b4f99..ec32cce 100644
--- a/tests/custom_cluster/test_admission_controller.py
+++ b/tests/custom_cluster/test_admission_controller.py
@@ -145,8 +145,7 @@ def impalad_admission_ctrl_flags(max_requests, max_queued, pool_max_mem,
   if queue_wait_timeout_ms is not None:
     extra_flags += " -queue_wait_timeout_ms={0}".format(queue_wait_timeout_ms)
   return ("-vmodule admission-controller=3 -default_pool_max_requests {0} "
-      "-default_pool_max_queued {1} -default_pool_mem_limit {2} "
-      "-disable_admission_control=false {3}".format(
+      "-default_pool_max_queued {1} -default_pool_mem_limit {2} {3}".format(
       max_requests, max_queued, pool_max_mem, extra_flags))
 
 
@@ -156,8 +155,7 @@ def impalad_admission_ctrl_config_args(additional_args=""):
   fs_allocation_path = os.path.join(resources_dir, "fair-scheduler-test2.xml")
   llama_site_path = os.path.join(resources_dir, "llama-site-test2.xml")
   return ("-vmodule admission-controller=3 -fair_scheduler_allocation_path %s "
-        "-llama_site_path %s -disable_admission_control=false %s" %\
-        (fs_allocation_path, llama_site_path, additional_args))
+        "-llama_site_path %s %s" % (fs_allocation_path, llama_site_path, additional_args))
 
 def log_metrics(log_prefix, metrics):
   LOG.info("%sadmitted=%s, queued=%s, dequeued=%s, rejected=%s, "\