2012-06-01 3 views
1

У меня есть celeryd, работающий с двумя рабочими, и наблюдая за ними, я вижу, что они принимают по 4 задания каждый, обрабатывают их, а затем останавливают обработку задач. (Обратите внимание, что эти задачи длинные, до 2 минут для обработки).Celeryd Worker прекращает обработку задач

celeryctl предоставляет следующую информацию:

[email protected]: ./manage.py celeryctl inspect active 
<- active 
DEBUG 2012-06-01 12:51:11,330 amqplib 661 Start from server, version: 8.0, properties: {u'information': u'Licensed under the MPL. See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2012 VMware, Inc.', u'capabilities': {}, u'platform': u'Erlang/OTP', u'version': u'2.8.2'}, mechanisms: [u'PLAIN', u'AMQPLAIN'], locales: [u'en_US'] 
DEBUG 2012-06-01 12:51:11,331 amqplib 507 Open OK! known_hosts [] 
DEBUG 2012-06-01 12:51:11,331 amqplib 70 using channel_id: 1 
DEBUG 2012-06-01 12:51:11,332 amqplib 484 Channel open 
-> eso-dev: OK 
    - empty - 

[email protected]: ./manage.py celeryctl inspect scheduled 
<- scheduled 
DEBUG 2012-06-01 12:52:07,107 amqplib 661 Start from server, version: 8.0, properties: {u'information': u'Licensed under the MPL. See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2012 VMware, Inc.', u'capabilities': {}, u'platform': u'Erlang/OTP', u'version': u'2.8.2'}, mechanisms: [u'PLAIN', u'AMQPLAIN'], locales: [u'en_US'] 
DEBUG 2012-06-01 12:52:07,108 amqplib 507 Open OK! known_hosts [] 
DEBUG 2012-06-01 12:52:07,108 amqplib 70 using channel_id: 1 
DEBUG 2012-06-01 12:52:07,109 amqplib 484 Channel open 
-> eso-dev: OK 
    - empty - 

[email protected]: ./manage.py celeryctl inspect registered 
<- registered 
DEBUG 2012-06-01 12:52:20,567 amqplib 661 Start from server, version: 8.0, properties: {u'information': u'Licensed under the MPL. See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2012 VMware, Inc.', u'capabilities': {}, u'platform': u'Erlang/OTP', u'version': u'2.8.2'}, mechanisms: [u'PLAIN', u'AMQPLAIN'], locales: [u'en_US'] 
DEBUG 2012-06-01 12:52:20,568 amqplib 507 Open OK! known_hosts [] 
DEBUG 2012-06-01 12:52:20,568 amqplib 70 using channel_id: 1 
DEBUG 2012-06-01 12:52:20,569 amqplib 484 Channel open 
-> eso-dev: OK 
    * celery.backend_cleanup 
    * celery.chord 
    * celery.chord_unlock 
    * 
celery_haystack.tasks.CeleryHaystackSignalHandler 
    * 
celery_haystack.tasks.CeleryHaystackUpdateIndex 
    * convert.tasks.create_pdf 
    * convert.tasks.create_pngs 

Кроме того каждый раз, когда это происходит последняя вещь, которая будет напечатана в журналах является:

[2012-06-01 12:17:53,777: INFO/MainProcess] Task convert.tasks.create_pdf[319984de-5bc4-47fc-891f-273d827d625f] retry: None 
None 
[2012-06-01 12:17:54,327: INFO/MainProcess] Task convert.tasks.create_pdf[8a89f3c1-e991-487e-a2db-a57d23bae17f] retry: None 
None 

Задачи также случиться, что не удалось незадолго до этого печатается, и в моем коде все, что я назвал, это :

except HTTPError, e: 
    statsd.incr('A.stat') 
    log.warn('Woops: %s', e) 
    create_pdf.retry() 

Если я убью celeryd (^ C, и он сразу же умирает, не дожидаясь задач), и начинайте его снова, он продолжается, как будто ничего не случилось еще на несколько задач и снова умирает (я думаю, что его всегда на задаче create_pdf, но журналы показывают, что эта задача не работает и не подвергается повторной попытке без проблем)

ответ

0

Это ошибка, связанная с сельдереем, которая была исправлена ​​в версии 3.0. (Issue 707)

Смежные вопросы