From cc3c2d671d4280d8a95d413f1d4fff353f33991c Mon Sep 17 00:00:00 2001 From: Gary Yao Date: Wed, 10 Apr 2019 09:47:04 +0200 Subject: [PATCH] [hotfix][tests] Shut down HDFS and YARN cleanly. Use provided scripts to shut down HDFS and YARN instead of grepkill! function. Using grepkill! one can run situations where flink and hadoop processes are killed concurrently, which results in an exception. --- flink-jepsen/src/jepsen/flink/hadoop.clj | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/flink-jepsen/src/jepsen/flink/hadoop.clj b/flink-jepsen/src/jepsen/flink/hadoop.clj index 4ba78593b44fa..2fbb445b5b0d9 100644 --- a/flink-jepsen/src/jepsen/flink/hadoop.clj +++ b/flink-jepsen/src/jepsen/flink/hadoop.clj @@ -115,18 +115,37 @@ (info "Start DataNode") (c/exec (str install-dir "/sbin/hadoop-daemon.sh") :--config hadoop-conf-dir :--script :hdfs :start :datanode))) +(defn stop-data-node! + [] + (c/exec (str install-dir "/sbin/hadoop-daemon.sh") :--config hadoop-conf-dir :--script :hdfs :stop :datanode)) + (defn start-resource-manager! [test node] (when (= node (resource-manager (:nodes test))) (info "Start ResourceManager") (c/exec (str install-dir "/sbin/yarn-daemon.sh") :--config hadoop-conf-dir :start :resourcemanager))) +(defn stop-resource-manager! + [] + (c/exec (str install-dir "/sbin/yarn-daemon.sh") :--config hadoop-conf-dir :stop :resourcemanager)) + (defn start-node-manager! [test node] (when (some #{node} (data-nodes (:nodes test))) (info "Start NodeManager") (c/exec (str install-dir "/sbin/yarn-daemon.sh") :--config hadoop-conf-dir :start :nodemanager))) +(defn stop-node-manager! + [] + (c/exec (str install-dir "/sbin/yarn-daemon.sh") :--config hadoop-conf-dir :stop :nodemanager)) + +(defn stop-all! + [] + (stop-name-node!) + (stop-data-node!) + (stop-resource-manager!) + (stop-node-manager!)) + (defn db [url] (reify db/DB @@ -143,7 +162,7 @@ (teardown! [_ _ _] (info "Teardown Hadoop") (c/su - (cu/grepkill! "hadoop") + (stop-all!) (c/exec :rm :-rf install-dir))) db/LogFiles