You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To prevent runaway blast jobs from blocking a sequenceserver instance, it would be helpful to support an optional/configurable job timeout with descriptive error message in the event of a timeout.
As a stopgap, a user might hard-code a CPU time limit:
--- a/lib/sequenceserver/sys.rb
+++ b/lib/sequenceserver/sys.rb
@@ -45,6 +45,8 @@ module SequenceServer
# Change to the specified directory.
Dir.chdir(options[:dir]) if options[:dir] && Dir.exist?(options[:dir])
+ Process::setrlimit(:CPU, 300) # 5-minute timeout
+
# Execute the shell command, redirect stdout and stderr to the
# temporary files.
exec(command, out: temp_files[:stdout].path.to_s, \
Though in the event of a timeout, the resulting error message is misleading at best ("BLAST query/options error: Invalid input format for BLAST Archive. Please refer to the BLAST+ user manual."), and a wall-time limit would be preferable---perhaps with the timeout module?
The text was updated successfully, but these errors were encountered:
To prevent runaway blast jobs from blocking a sequenceserver instance, it would be helpful to support an optional/configurable job timeout with descriptive error message in the event of a timeout.
As a stopgap, a user might hard-code a CPU time limit:
Though in the event of a timeout, the resulting error message is misleading at best ("BLAST query/options error: Invalid input format for BLAST Archive. Please refer to the BLAST+ user manual."), and a wall-time limit would be preferable---perhaps with the timeout module?
The text was updated successfully, but these errors were encountered: