@Melvies

Ошибка asyncio. Task was destroyed but it is pending?

Task was destroyed but it is pending!
    task: <Task pending name='Task-104' coro=<Dispatcher._process_polling_updates() done, defined at C:\Users\Дима\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\aiogram\dispatcher\dispatcher.py:401> wait_for=<_GatheringFuture pending cb=[<TaskWakeupMethWrapper object at 0x00000240E5B4E0D0>()]>>
    Exception ignored in: <coroutine object Handler.notify at 0x00000240E5AD4D40>
    Traceback (most recent call last):
      File "C:\Users\Дима\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\aiogram\dispatcher\handler.py", line 126, in notify
        current_handler.reset(ctx_token)
    ValueError: <Token var=<ContextVar name='current_handler' at 0x00000240E59C4C20> at 0x00000240E5B4CEC0> was created in a different Context

Ошибка возникает когда идёт флуд. Если боту в ЛС профлудить 5-6 раз командой то из 5-6 он может обработать 4 и на 5 выскочит эта ошибка. Код с удовольствием скинул бы но он на 2000 строк. Только фрагменты:

Начало:
loop = asyncio.get_event_loop()
    
    TOKEN = 'Token'
    
    bot = Bot(token=TOKEN, loop=loop)
    dp = Dispatcher(bot, storage=MemoryStorage())
    dp.middleware.setup(LoggingMiddleware())


Конец:
if __name__ == "__main__":
        executor.start_polling(dp, loop=loop)
  • Вопрос задан
  • 72 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы