Sun Grid Engine重新提交工作卡在' Rq'州

时间:2013-04-09 00:05:52

标签: grid-computing sungridengine

我希望这是一个非常简单的问题,但我对Sun Grid并不是很熟悉,所以我一直无法找到答案。我目前正在使用bash提交脚本向网格提交作业,该脚本生成命令然后执行它。我在网上看到,如果sun网格作业以99的代码退出,它将重新提交给网格。我已经成功编写了我的bash脚本来执行此操作:

[code to generate command, stores in $command]
$command
STATUS=$?
if [[ $STATUS -ne 0 ]]; then
    exit 99
fi
exit 0

当我使用我知道具有非零退出状态的命令将此作业提交到网格时,该作业确实似乎重新提交,但是调度程序从不将其发送到另一个主机,而是它仍然停留在状态为“Rq”的队列:

job-ID  prior   name       user         state submit/start at     queue                          slots ja-task-ID
-----------------------------------------------------------------------------------------------------------------
2150015 0.55500 GridJob.sh my_user      Rq    04/08/2013 17:49:00                                    1

我觉得这在队列的配置选项中很简单,但我找不到任何谷歌搜索。我尝试使用qsub -r y选项提交此作业,但这似乎没有改变任何内容。

谢谢!

1 个答案:

答案 0 :(得分:1)

重新安排的作业只会在其rerun属性(默认情况下为FALSE)设置为TRUE的队列中运行,因此请检查队列配置(qconf -mq myqueue)。如果没有这个,你的工作将无限期地保持在重新安排的状态,因为它无处可去。

IIRC,提交qsub -r yes的作业只会使他们在exec节点崩溃时自动重新安排,并且以状态99退出应该触发重新安排。