Сельдерей принимает новые задания, но все старые застряли в состоянии PENDING

В двух словах: Я могу запускать новые задачи celery, но старые застряли в состоянии PENDING.

Команда запуска Celery:

celery -A config.celery_app worker --pool=solo --loglevel=info

Окружение:

Celery 5.4.0 redis-server 7.4.1 на WSL (Windows Linux)
Приложение celery и Django работает под windows, а redis-сервер - в WSL.

Я запустил celery пару раз и все было хорошо, но теперь я постоянно вижу некоторые старые задачи в состоянии «PENDING», когда я читаю их состояние в Django с помощью AsyncState(task_id).

Очистка очереди с помощью celery -A config.celery_app purge тоже ничего не дала.

Я посетил несколько тем, посвященных этому, но ни одна из них, похоже, не имеет отношения к моей конкретной проблеме. (Я все еще могу выполнять новые задания)

Интересно, не является ли это проблемой при работе на WSL или чем-то подобным, потому что я также не могу увидеть очереди задач из приложения или CLI:

celery inspect active_queues

дает kombu.exceptions.OperationalError: [WinError 10061] No connection could be made because the target machine actively refused it

и делает:

    i = app.control.inspect()
    scheduled = i.scheduled()

показывает отсутствие заданий

Проект построен с использованием django-cookiecutter и задача Celery была определена следующим образом:

@app.task
def my_task(**kwargs):
    return my_function(**kwargs)
Вернуться на верх