8784: Link directly to keep-web when sharing collections.
[arvados.git] / crunch_scripts / run-command
index a6c5ef981ce35fb5e52f8bab9c6628c803e45872..74793d4fce40ae84a820a72db74b69a6c92f3ec4 100755 (executable)
@@ -397,12 +397,19 @@ try:
     active = 1
     pids = set([s.pid for s in subprocesses])
     while len(pids) > 0:
-        (pid, status) = os.wait()
-        pids.discard(pid)
-        if not taskp.get("task.ignore_rcode"):
-            rcode[pid] = (status >> 8)
+        try:
+            (pid, status) = os.wait()
+        except OSError as e:
+            if e.errno == errno.EINTR:
+                pass
+            else:
+                raise
         else:
-            rcode[pid] = 0
+            pids.discard(pid)
+            if not taskp.get("task.ignore_rcode"):
+                rcode[pid] = (status >> 8)
+            else:
+                rcode[pid] = 0
 
     if sig.sig is not None:
         logger.critical("terminating on signal %s" % sig.sig)