С небольшой помощью некоторых друзей я получил ответ, по-видимому, мне пришлось подать команду qalter
для изменения зависимости, но вместо указания нового JOBID
, просто пропуская :JOBID
.
Пример:
Отправить работу, которая зависит от успешного завершения предыдущей работы (скажем, 1234
)
qsub -q my_queue -l ... -W depend=afterok:1234 file.pbs
Новая отправленная работа останется в режиме ожидания до работы 1234
заканчивается ExitStatus:0
.Мы можем проверить JobId и статус вновь представленной работы с помощью команды qstat
(ее статус должен быть H для удержания и сказать, что его Id равен 1235
).Затем, если мы решим, что нам не нужно ждать завершения первой команды, мы можем очистить зависимость:
qalter -W depend=afterok 1235
Обратите внимание, что я пропустил двоеточие и идентификатор зависимости после afterok
, и этоqalter
требует, чтобы JobId изменялся как последний аргумент.