Проблемы при использовании пула соединений

При использовании пула соединений, после выполнения запроса к базе, соединение не закрывается, а после достижения лимита, база вообще не отвечает
Вот мой код

import asyncio
import datetime
import aiosqlite


class BotDB:

def __init__(self, db_file, pool_size=10):
    self.db_file = db_file
    self.pool = asyncio.Queue()
    for _ in range(pool_size):
        self.pool.put_nowait(aiosqlite.connect(db_file))

async def acquire_connection(self):
    return await self.pool.get()

async def release_connection(self, conn):
    self.pool.put_nowait(conn)

async def execute_query_one(self, query, *args):
    async with await self.acquire_connection() as conn:
        cursor = await conn.execute(query, args)
        return await cursor.fetchone()

async def execute_query_all(self, query, *args):
    async with await self.acquire_connection() as conn:
        cursor = await conn.execute(query, args)
        return await cursor.fetchall()

async def execute_modify_query(self, query, *args):
    async with await self.acquire_connection() as conn:
        cursor = await conn.execute(query, args)
        await conn.commit()
        return await cursor.rowcount

async def user_exists(self, tutor_id): # Простенький запрос к базе, для примера
    """Перевіряємо чи є репетитор в базі"""
    query = "SELECT tutor_id FROM Tutors WHERE tutor_id = ?"
    result = await self.execute_query_one(query, tutor_id)
    return bool(len(result))

Буду очень рад помощи, потому что уже второй день мучаюсь над данной проблемой


Ответы (0 шт):