один и тот же код внутри которого есть prepares statement с циклом execute этого препареда около 100к итераций. Но в psql он выполняется минуты за 2, а в pgadmin после какой то из итераций скорость начинает падать а потом и вовсе будто бы зависает. Время выполнения вообще неизвестно. Если что, есть баунсер. Ума не приложу что это.
Захожу под одним пользаком. Пг 9.6.
А можете показать код?
Нет возможности, это происходит на локальной машине. Может быть знаете, есть ли какая то разница в конекшене может быть? Или в чем эта разница впринципе может быть между psql и pgadmin 3 ?
> есть ли какая то разница в конекшене может быть? А они оба через Unix-domain socket подключаются (кажется, в 9.6 это уже было в pg_stat_activity)? > Или в чем эта разница впринципе может быть между psql и pgadmin 3 Может, pgadmin не успевает читать возвращаемые данные (этот цикл же что-то выдаёт клиенту, так — иначе откуда Вы знаете, что "после какой то из итераций скорость начинает падать")? Тем не менее, лучше бы хоть примерно знать, какой там код (одно дело DO, который ничего не возвращает клиенту, а 100k результатов по 100k rows, например — совсем другое)...
Во время подвисания надо смотреть pg_stat_activity
Обсуждают сегодня