fix: use fresh DB session for deactivate after long unpin loop

This commit is contained in:
Fringg
2026-04-24 18:13:48 +03:00
parent 63e1127353
commit 5ed9a0d4fb
+4 -2
View File
@@ -262,8 +262,10 @@ async def unpin_active_pinned_message(
await asyncio.gather(*tasks)
await asyncio.sleep(0.05)
# Деактивируем ПОСЛЕ успешного откреплений — при сбое можно повторить
await deactivate_active_pinned_message(db)
# Деактивируем ПОСЛЕ откреплений через fresh session —
# исходная сессия может протухнуть за время долгого цикла Telegram API
async with AsyncSessionLocal() as fresh_db:
await deactivate_active_pinned_message(fresh_db)
return unpinned_count, failed_count, True