Не освобождаются подключения к postgresql golang
В небольшом веб приложении использую движок "github.com/lib/pq"
Инициализирую глобальную переменную db и открываю соединение в отдельном модуле с параметрами:
db.SetMaxOpenConns(10) // Максимальное количество открытых соединений
db.SetMaxIdleConns(5) // Максимальное количество соединений в пуле
db.SetConnMaxLifetime(time.Minute * 5) // Максимальное время жизни соединения в пуле
в main использую эту же переменную db и запросы выполняю в основном через QueryRow, для тех что делаю через Query после завершения цикла перебора выполняю rows.Close(). Но при каждом переходе или запросе на странице счётчик соединений db.Stats().InUse растёт и не уменьшается, после предельного значения веб сервер перестаёт отображать страницы. Как правильно работать с пулом соединений так чтобы сайт не ложился?