[ARVADOS] updated: fe8143ccd8193e4d7d2098d0a61dce7127aef713

Git user git at public.curoverse.com
Fri Apr 15 22:31:25 EDT 2016


Summary of changes:
 .../arvnodeman/computenode/dispatch/slurm.py            | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

       via  fe8143ccd8193e4d7d2098d0a61dce7127aef713 (commit)
      from  dfdb6060ea1a6544fe2497d7c1d18078879fe090 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit fe8143ccd8193e4d7d2098d0a61dce7127aef713
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date:   Fri Apr 15 22:31:21 2016 -0400

    Don't issue drain when shutdown has been cancelled.  refs #8953

diff --git a/services/nodemanager/arvnodeman/computenode/dispatch/slurm.py b/services/nodemanager/arvnodeman/computenode/dispatch/slurm.py
index 4a3e98a..cae8719 100644
--- a/services/nodemanager/arvnodeman/computenode/dispatch/slurm.py
+++ b/services/nodemanager/arvnodeman/computenode/dispatch/slurm.py
@@ -52,16 +52,19 @@ class ComputeNodeShutdownActor(SlurmMixin, ShutdownActorBase):
 
     @RetryMixin._retry((subprocess.CalledProcessError,))
     def issue_slurm_drain(self):
-        if self.cancel_reason is None:
-            if self._nodename:
-                self._set_node_state(self._nodename, 'DRAIN', 'Reason=Node Manager shutdown')
-                self._logger.info("Waiting for SLURM node %s to drain", self._nodename)
-                self._later.await_slurm_drain()
-            else:
-                self._later.shutdown_node()
+        if self.cancel_reason is not None:
+            return
+        if self._nodename:
+            self._set_node_state(self._nodename, 'DRAIN', 'Reason=Node Manager shutdown')
+            self._logger.info("Waiting for SLURM node %s to drain", self._nodename)
+            self._later.await_slurm_drain()
+        else:
+            self._later.shutdown_node()
 
     @RetryMixin._retry((subprocess.CalledProcessError,))
     def await_slurm_drain(self):
+        if self.cancel_reason is not None:
+            return
         output = self._get_slurm_state(self._nodename)
         if output in ("drng\n", "alloc\n", "drng*\n", "alloc*\n"):
             self._timer.schedule(time.time() + 10,

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list