Celery выдает сообщение "ValueError: недостаточно значений для распаковки (ожидалось 3, получено 0)` при вызове task

Я использую Celery в проекте Django для планирования задач уведомления. Когда я запускаю Celery worker и задача выполняется, я получаю следующую ошибку:

ValueError: not enough values to unpack (expected 3, got 0)

Полная обратная связь:

File "celery\app\trace.py", line 640, in fast_trace_task
    tasks, accept, hostname = _loc
ValueError: not enough values to unpack (expected 3, got 0)

Это происходит при запуске следующей задачи:

# core/tasks.py

from celery import shared_task
from django.utils import timezone
from core.models import Notification

@shared_task
def send_scheduled_notifications():
    now = timezone.now()
    notifications = Notification.objects.filter(
        is_read=False,
        send_at__lte=now
    )
    for notification in notifications:
        print(f"Sending notification: {notification.title}")
        notification.is_read = True
        notification.save()

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

Мое окружение:

  • Windows 11
  • Python 3.13
  • Celery 5.5.1
  • Redis работает локально

Я подтвердил, что задача выполняется нормально при ручном выполнении вне Celery.

<время работы/>

"Я сталкивался с похожим вопросом, но моя ошибка возникает в другой версии Celery, и задача, похоже, структурирована правильно".

Вернуться на верх