You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@storm.apache.org by ka...@apache.org on 2018/06/25 00:48:54 UTC

[1/2] storm git commit: STORM-3110: Skip the user while checking isProcessAlive

Repository: storm
Updated Branches:
  refs/heads/master d6f8afbbc -> 950e527d5


STORM-3110: Skip the user while checking isProcessAlive

* reintroduce user check and rely on 'user.name' when not running worker as launching user


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/82deb62d
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/82deb62d
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/82deb62d

Branch: refs/heads/master
Commit: 82deb62dd3a6f58e5569244517bc93647fcab2a2
Parents: d6f8afb
Author: Arun Mahadevan <ar...@apache.org>
Authored: Fri Jun 15 16:32:53 2018 -0700
Committer: Jungtaek Lim <ka...@gmail.com>
Committed: Mon Jun 25 09:48:38 2018 +0900

----------------------------------------------------------------------
 .../apache/storm/daemon/supervisor/Container.java | 18 +++++++++++++++---
 .../daemon/supervisor/RunAsUserContainer.java     | 12 ++++++++++++
 2 files changed, 27 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/82deb62d/storm-server/src/main/java/org/apache/storm/daemon/supervisor/Container.java
----------------------------------------------------------------------
diff --git a/storm-server/src/main/java/org/apache/storm/daemon/supervisor/Container.java b/storm-server/src/main/java/org/apache/storm/daemon/supervisor/Container.java
index b4d6442..452237f 100644
--- a/storm-server/src/main/java/org/apache/storm/daemon/supervisor/Container.java
+++ b/storm-server/src/main/java/org/apache/storm/daemon/supervisor/Container.java
@@ -306,10 +306,11 @@ public abstract class Container implements Killable {
     @Override
     public boolean areAllProcessesDead() throws IOException {
         Set<Long> pids = getAllPids();
-        String user = getWorkerUser();
-
+        String user = getRunWorkerAsUser();
+        
         boolean allDead = true;
-        for (Long pid : pids) {
+        for (Long pid: pids) {
+            LOG.debug("Checking if pid {} owner {} is alive", pid, user);
             if (!isProcessAlive(pid, user)) {
                 LOG.debug("{}: PID {} is dead", _workerId, pid);
             } else {
@@ -520,6 +521,17 @@ public abstract class Container implements Killable {
         }
     }
 
+    /**
+     * Returns the user that the worker process is running as.
+     *
+     * The default behavior is to launch the worker as the user supervisor is running as (e.g. 'storm')
+     *
+     * @return the user that the worker process is running as.
+     */
+    protected String getRunWorkerAsUser() {
+        return System.getProperty("user.name");
+    }
+
     protected void saveWorkerUser(String user) throws IOException {
         _type.assertFull();
         LOG.info("SET worker-user {} {}", _workerId, user);

http://git-wip-us.apache.org/repos/asf/storm/blob/82deb62d/storm-server/src/main/java/org/apache/storm/daemon/supervisor/RunAsUserContainer.java
----------------------------------------------------------------------
diff --git a/storm-server/src/main/java/org/apache/storm/daemon/supervisor/RunAsUserContainer.java b/storm-server/src/main/java/org/apache/storm/daemon/supervisor/RunAsUserContainer.java
index eadd635..8b134b5 100644
--- a/storm-server/src/main/java/org/apache/storm/daemon/supervisor/RunAsUserContainer.java
+++ b/storm-server/src/main/java/org/apache/storm/daemon/supervisor/RunAsUserContainer.java
@@ -102,4 +102,16 @@ public class RunAsUserContainer extends BasicContainer {
         }
         ClientSupervisorUtils.processLauncher(_conf, user, commandPrefix, args, null, logPrefix, processExitCallback, targetDir);
     }
+
+    /**
+     * If 'supervisor.run.worker.as.user' is set, worker will be launched as the user that launched the topology.
+     */
+    @Override
+    protected String getRunWorkerAsUser() {
+        try {
+            return getWorkerUser();
+        } catch (Exception ex) {
+            throw new RuntimeException(ex);
+        }
+    }
 }


[2/2] storm git commit: Merge branch 'STORM-3110-merge'

Posted by ka...@apache.org.
Merge branch 'STORM-3110-merge'


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/950e527d
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/950e527d
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/950e527d

Branch: refs/heads/master
Commit: 950e527d578d01f4db2c27f87b22b5ac16138d7a
Parents: d6f8afb 82deb62
Author: Jungtaek Lim <ka...@gmail.com>
Authored: Mon Jun 25 09:48:48 2018 +0900
Committer: Jungtaek Lim <ka...@gmail.com>
Committed: Mon Jun 25 09:48:48 2018 +0900

----------------------------------------------------------------------
 .../apache/storm/daemon/supervisor/Container.java | 18 +++++++++++++++---
 .../daemon/supervisor/RunAsUserContainer.java     | 12 ++++++++++++
 2 files changed, 27 insertions(+), 3 deletions(-)
----------------------------------------------------------------------