У меня есть сценарий perl, который подготавливает файлы для ввода в двоичную программу и передает выполнение двоичной программы в систему очередей SGE версии 6.2u2.
Задания передаются с параметром -sync y
чтобы разрешить родительскому сценарию perl возможность отслеживать состояние отправленных заданий с помощью функции waitpid.
Это также очень полезно, поскольку отправка SIGTERM родительскому сценарию perl передает этот сигнал каждому из дочерних элементов,которые затем направляют этот сигнал на qsub, тем самым изящно завершая все связанные отправленные задания.
Таким образом, очень важно, чтобы я мог отправлять задания с этим параметром -sync y
.
К сожалению,Я продолжаю получать следующее сообщение об ошибке:
Unable to initialize environment because of error: range_list containes no elements
Обратите внимание на неправильное написание слов «содержит».Это НЕ опечатка.Это просто показывает, насколько плохо поддерживается эта область кода / сообщения об ошибке.
Попытки отправки, приводящие к этой ошибке, даже не генерируют файлы STDOUT и STDERR *.e{JOBID}
и *.o{JOBID}
.Отправка только что провалилась.
Поиск в Google по этому сообщению об ошибке приводит только к неразрешенным сообщениям на непонятной доске объявлений.
Эта ошибка даже не возникает надежно.Я могу перезапустить свой сценарий, и те же самые задания не обязательно даже приведут к ошибке.Также не имеет значения, с какого узла я пытаюсь отправить задания.
Я надеюсь, что кто-то здесь сможет это выяснить.
Ответы на любой из этих вопросов, таким образом, решат мою проблему:
- Сохраняется ли эта ошибка в более поздних версиях SGE?
- Могу ли я изменить параметры командной строки для qsub, чтобы избежать этого?
- Какого черта этосообщение об ошибке говорит о?