projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix parsing of buffer_size parameter in jobs.log_tail_follow
[arvados.git]
/
services
/
api
/
script
/
crunch-dispatch.rb
diff --git
a/services/api/script/crunch-dispatch.rb
b/services/api/script/crunch-dispatch.rb
index 88840d53b69a4358e6686b7e3f99b154dd5ddc31..a23b02b15cd6c3c669cf8cf3cbab212ee1ec0077 100755
(executable)
--- a/
services/api/script/crunch-dispatch.rb
+++ b/
services/api/script/crunch-dispatch.rb
@@
-2,6
+2,7
@@
include Process
include Process
+$warned = {}
$signal = {}
%w{TERM INT}.each do |sig|
signame = sig
$signal = {}
%w{TERM INT}.each do |sig|
signame = sig
@@
-311,7
+312,9
@@
class Dispatcher
else
refresh_todo unless did_recently(:refresh_todo, 1.0)
update_node_status
else
refresh_todo unless did_recently(:refresh_todo, 1.0)
update_node_status
- start_jobs unless @todo.empty? or did_recently(:start_jobs, 1.0)
+ unless @todo.empty? or did_recently(:start_jobs, 1.0) or $signal[:term]
+ start_jobs
+ end
end
reap_children
select(@running.values.collect { |j| [j[:stdout], j[:stderr]] }.flatten,
end
reap_children
select(@running.values.collect { |j| [j[:stdout], j[:stderr]] }.flatten,
@@
-332,4
+335,7
@@
class Dispatcher
end
end
end
end
+# This is how crunch-job child procs know where the "refresh" trigger file is
+ENV["CRUNCH_REFRESH_TRIGGER"] = Rails.configuration.crunch_refresh_trigger
+
Dispatcher.new.run
Dispatcher.new.run