如果作业意外失败,HTCondor 允许重试作业。但是,这样做会导致失败作业的标准输出和标准错误文件在重试时被作业覆盖。这妨碍了调试以找出某些作业失败的原因。
有没有办法指定作业的每次尝试都应该有输出?
演示问题的示例配置脚本和可执行文件:
Universe = vanilla
Executable = usually_crash.sh
Output = $(Cluster).$(Process).stdout
Log = $(Cluster).$(Process).log
max_retries = 100
Queue
通常_crash.sh:
#!/bin/bash
random=$(($RANDOM % 10))
echo $random
exit $random
运行时,此作业通常会失败几次,但一旦成功,来自失败作业的所有标准输出和标准错误都会被覆盖。