fgsfds (innormal) wrote in ru_python,
fgsfds
innormal
ru_python

Celery [решено]

Господа, добрый вечер,

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

Делаю пример из туториала на сайте (тот, который про add(x,y); return x+y), брокер - rabbitmq, там же храню результаты.
Проблема заключается в том, что таск всегда висит в состоянии 'PENDING', хотя в логах celery говорит, что

[2015-02-19 18:50:02,613: INFO/MainProcess] Received task: tasks.add[ef01472a-612d-47b0-b14a-b9223343b38f]
[2015-02-19 18:50:02,643: INFO/MainProcess] Task tasks.add[ef01472a-612d-47b0-b14a-b9223343b38f] succeeded in 0.028690864972304553s: 5

Команды 'celery inspect active', 'celery inspect scheduled' честно говорят, что очередь пуста.

Прочее:
virtualenv, Python3.4, celery 3.1.17, RabbitMQ 3.4.3, FreeBSD 10.0.

Вопрос в том, почему задача висит в этом состоянии?

UPD:
Конфиг celery:

CELERY_TIMEZONE = 'Europe/Moscow'

CELERY_IMPORTS = ("tasks", )
CELERY_RESULT_BACKEND = "amqp"
BROKER_URL = "amqp://guest:guest@localhost:5672//"
CELERY_TASK_RESULT_EXPIRES = 300
CELERY_IGNORE_RESULT = False

UPD2:
По старой доброй традиции проблема крылась не в инструменте, а в голове. Как только я привел к одному знаменателю все пароли, явки и имена пользователей, сразу все заработало как ожидалось. Впрочем, в конечном итоге я выбрал redis вместо rabbitmq по простой причине - rc.d скрипт для него заработал из коробки.
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 3 comments