projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
10081: Upload dependencies. Fix keep paths. Ensure correct quoting.
[arvados.git]
/
crunch_scripts
/
run-command
diff --git
a/crunch_scripts/run-command
b/crunch_scripts/run-command
index a6c5ef981ce35fb5e52f8bab9c6628c803e45872..74793d4fce40ae84a820a72db74b69a6c92f3ec4 100755
(executable)
--- a/
crunch_scripts/run-command
+++ b/
crunch_scripts/run-command
@@
-397,12
+397,19
@@
try:
active = 1
pids = set([s.pid for s in subprocesses])
while len(pids) > 0:
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:
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)
if sig.sig is not None:
logger.critical("terminating on signal %s" % sig.sig)