возвращает в том числе refcursor, который затем вычитывает приложение и т.д.
Первый в сессии запуск - 10 секунд, следующий около 3 секунд, затем по 0.2 секунды. На кеширование данных не похоже - такое поведение наблюдается со сменой входных параметров в разумных пределах.
Куда копать?
А туда запихать уведомления можно?
RAISE NOTICE ? Да можно
А просто сделать 1000 запусков и запомнить время выполнения каждого запуска? Может там не по убыванию
Да вроде после пары запусков сейчас стабильно занимает 0.2-0.24 сек на серии до 10-15 запусков
Ну вот хотя бы это в начало и конец для начала
Начать стоит со сбора информацыи из закрепа: https://t.me/pgsql/303899
А чем это поможет если снаружи функция возвращающяя set of records. А вся сложность в глубине
В глубине и собирай (через auto_explain).
Обсуждают сегодня