You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by ga...@apache.org on 2018/09/28 19:06:35 UTC

[flink] 09/10: [hotfix][tests] Stop all services supervised by runit when tearing down.

This is an automated email from the ASF dual-hosted git repository.

gary pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git

commit 79608025e971c4877bbe025b6d8b2eeff697c582
Author: gyao <ga...@data-artisans.com>
AuthorDate: Tue Sep 18 17:23:53 2018 +0200

    [hotfix][tests] Stop all services supervised by runit when tearing down.
---
 flink-jepsen/src/jepsen/flink/db.clj    |  4 +++-
 flink-jepsen/src/jepsen/flink/utils.clj | 13 ++++++++++---
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/flink-jepsen/src/jepsen/flink/db.clj b/flink-jepsen/src/jepsen/flink/db.clj
index b071d3d..e0f5ff8 100644
--- a/flink-jepsen/src/jepsen/flink/db.clj
+++ b/flink-jepsen/src/jepsen/flink/db.clj
@@ -115,7 +115,9 @@
         (doall (map #(db/setup! % test node) dbs))))
     (teardown! [_ test node]
       (c/su
-        (doall (map #(db/teardown! % test node) dbs))))
+        (try
+          (doall (map #(db/teardown! % test node) dbs))
+          (finally (fu/stop-all-supervised-services!)))))
     db/LogFiles
     (log-files [_ test node]
       (->>
diff --git a/flink-jepsen/src/jepsen/flink/utils.clj b/flink-jepsen/src/jepsen/flink/utils.clj
index 5d73d29..50d0075 100644
--- a/flink-jepsen/src/jepsen/flink/utils.clj
+++ b/flink-jepsen/src/jepsen/flink/utils.clj
@@ -64,7 +64,7 @@
   [service-name cmd]
   (let [service-dir (str "/etc/sv/" service-name)
         run-script (str service-dir "/run")]
-    (info "Create service" service-name)
+    (info "Create supervised service" service-name)
     (c/su
       (install-process-supervisor!)
       (c/exec :mkdir :-p service-dir)
@@ -77,6 +77,13 @@
 (defn stop-supervised-service!
   "Stops a service and removes it from supervision."
   [service-name]
-  (info "Stop service" service-name)
+  (info "Stop supervised service" service-name)
   (c/su
-    (c/exec :rm :-f (str "/etc/service/" service-name))))
\ No newline at end of file
+    (c/exec :rm :-f (str "/etc/service/" service-name))))
+
+(defn stop-all-supervised-services!
+  "Stops and removes all services from supervision if any."
+  []
+  (info "Stop all supervised services.")
+  (c/su
+    (c/exec :rm :-f (c/lit (str "/etc/service/*")))))