Python aiogram и aiomysql (pending Ошибка)
Вот такая проблема, при первом старте на 2 - 3 запрос на создание соединения к базе mysql выдает ошибку код
@classmethod
async def connect(cls):
print('AuthorizationDB 1')
conn_inf = await cls.take_settings()
print(conn_inf)
print('AuthorizationDB 2')
pool = False
try:
pool = await aiomysql.create_pool(host=conn_inf['host'],
user=conn_inf['user'],
password=conn_inf['password'],
charset=conn_inf['charset'],
cursorclass=aiomysql.cursors.DictCursor)
except Exception as ex:
print(ex)
print('AuthorizationDB 3')
return pool
Сама ошибка
Task was destroyed but it is pending!
task: <Task pending name='Task-32' coro=<Dispatcher._process_polling_updates() done, defined at C:\PYTHON\NEW_BOT\venv\lib\site-packages\aiogram\dispatcher\dispatcher.py:407> wait_for=<_GatheringFuture pending cb=[<TaskWakeupMethWrapper object at 0x000002E579982610>()]>>
Exception ignored in: <coroutine object Handler.notify at 0x000002E5799118C0>
Traceback (most recent call last):
File "C:\PYTHON\NEW_BOT\venv\lib\site-packages\aiogram\dispatcher\handler.py", line 126, in notify
current_handler.reset(ctx_token)
ValueError: <Token var=<ContextVar name='current_handler' at 0x000002E578A93BD0> at 0x000002E579990940> was created in a different Context
Ответы (1 шт):
Автор решения: Andrew Terleckiy
→ Ссылка
Для решения данной проблемы нужно создавать свои асинхронные задачи или выводить в отдельный поток, библиотека aiogram и aiomysql в какой то момент конфликтую.