Что вызвало (0) Аварийное завершение (сигнал 11) в Кондоре

При запуске сценария Python в HTCondor задание завершается со следующим кодом ошибки в файле.log:

006 (4069.000.000) 02/19 15:02:29 Image size of job updated: 1393668
        1362  -  MemoryUsage of job (MB)
        1393668  -  ResidentSetSize of job (KB)
...
006 (4069.000.000) 02/19 15:03:12 Image size of job updated: 33197416
        1430  -  MemoryUsage of job (MB)
        1463300  -  ResidentSetSize of job (KB)
...
005 (4069.000.000) 02/19 15:03:12 Job terminated.
        (0) Abnormal termination (signal 11)
        (0) No core file
                Usr 0 00:00:09, Sys 0 00:00:40  -  Run Remote Usage
                Usr 0 00:00:00, Sys 0 00:00:00  -  Run Local Usage
                Usr 0 00:00:09, Sys 0 00:00:40  -  Total Remote Usage
                Usr 0 00:00:00, Sys 0 00:00:00  -  Total Local Usage
        0  -  Run Bytes Sent By Job
        4477484  -  Run Bytes Received By Job
        0  -  Total Bytes Sent By Job
        4477484  -  Total Bytes Received By Job
        Partitionable Resources :    Usage  Request Allocated
           Cpus                 :                 1         1
           Disk (KB)            :     4500     4500   1699801
           Gpus                 :                           0
           Memory (MB)          :     1430        5         5
...

Что может вызвать такую ​​ошибку и как исправить ее?

После поиска в Google я нашел список с предложением добавить строку

getenv=true

в файле отправки, который я сделал, но это не решило проблему, и я получил ту же ошибку.

Спасибо за вашу помощь / предложения

1 ответ

Сигнал 11 относится к SIGSEGV, который является ошибкой сегментации. В сообщении журнала говорится, что ваш сценарий завершен, потому что в нем произошла ошибка сегментации, и Condor ничего не может сделать. Вам нужно отладить ваш скрипт, чтобы убедиться, что он не делает недопустимых обращений к памяти и т. Д., Что приведет к ошибкам в работе.

Я также добавил бы уведомление в файл описания задания, если Condor настроен правильно:

notification = Error
notify_user = my@email.com

Так, что в этих случаях он будет уведомлять вас о том, что ваша работа была прекращена ненормально.

Другие вопросы по тегам