Size: a a a

pgsql – PostgreSQL

2021 March 15

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
Хостинг heroku оказывается с 23 февраля разрешает подключение к встроенной postgresql только через ssl. А ssl у них платная услуга. Они сворачивают благотворительность и теперь все должны покупать сертификаты для коннекта приложения на их хостинге к СУБД на их хостинге или я не догоняю, как теперь надо делать? Есть у кого рабочий пример коннекта c tokio-postgres over TLS?
источник

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
возможно дело в этом
источник

MS

Mikhail Smolnikov in pgsql – PostgreSQL
Do c Tor O r` Ry
Хостинг heroku оказывается с 23 февраля разрешает подключение к встроенной postgresql только через ssl. А ssl у них платная услуга. Они сворачивают благотворительность и теперь все должны покупать сертификаты для коннекта приложения на их хостинге к СУБД на их хостинге или я не догоняю, как теперь надо делать? Есть у кого рабочий пример коннекта c tokio-postgres over TLS?
странно, но до вчерашнего дня всё работало)
источник

K

Kino Recovery in pgsql – PostgreSQL
Андрей Зубков
SELECT 255,x,ROW_NUMBER() over () from UNNEST (ARRAY[22,23,255]) x;
подойдет?
да, спасибо. а можно пояснить почему это сработало и вчем различия с моим вариантом?
источник

АЗ

Андрей Зубков... in pgsql – PostgreSQL
Kino Recovery
да, спасибо. а можно пояснить почему это сработало и вчем различия с моим вариантом?
Ну, во-первых, поздапрос тут просто не нужен, поскольку unnest и так возвращает set of anyelement, а во-вторых, в запросе, который я привел немного срезан угол, postgres это позволяет, но для полноценного понимания cути происходящего надо сделать так:
SELECT 255,x.arr_val,ROW_NUMBER() over () from UNNEST (ARRAY[22,23,255]) AS x(arr_val);
Думаю, так будет понятнее.
В вашем запросе можно сделать точно так же и тоже сработает, посто подзапрос не нужен.
источник

AN

Alexey Naumenko in pgsql – PostgreSQL
Do c Tor O r` Ry
Хостинг heroku оказывается с 23 февраля разрешает подключение к встроенной postgresql только через ssl. А ssl у них платная услуга. Они сворачивают благотворительность и теперь все должны покупать сертификаты для коннекта приложения на их хостинге к СУБД на их хостинге или я не догоняю, как теперь надо делать? Есть у кого рабочий пример коннекта c tokio-postgres over TLS?
если у вас не серьезный коммерс - как вариант можете бесплатный SSL взять с https://freessl.space/ либо с клаудфлара (но надо будет и ДНС на клаудфлар перенести)
источник

AN

Alexey Naumenko in pgsql – PostgreSQL
лично я юзаю клаудфларовские, но у меня там только пет-прожекты.
источник

AS

Alexey Stavrov in pgsql – PostgreSQL
Всем привет.
Подскажите, как-то можно узнать время жизни самой долгой в pg транзакции (возможно за период, за месяц)?)
Т.е. хочется понять, есть ли проблемы с длинными транзакциями.

У нас клиенты делают по 7-8тыс коннекций к pg_bouncer, а pg_bouncer держит к pg 3000 коннекций.
Я подпинываю админов изменить число коннекций к pg от pg_bouncer-а хотя бы на 200, а он против, боится)

Нужно как-то аргументировать свои решения, поэтому я хотел бы узнать ответ на данный вопрос.
источник

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
Alexey Stavrov
Всем привет.
Подскажите, как-то можно узнать время жизни самой долгой в pg транзакции (возможно за период, за месяц)?)
Т.е. хочется понять, есть ли проблемы с длинными транзакциями.

У нас клиенты делают по 7-8тыс коннекций к pg_bouncer, а pg_bouncer держит к pg 3000 коннекций.
Я подпинываю админов изменить число коннекций к pg от pg_bouncer-а хотя бы на 200, а он против, боится)

Нужно как-то аргументировать свои решения, поэтому я хотел бы узнать ответ на данный вопрос.
у баунсера стата есть, по ней можно определить
источник

ПЕ

Петр Егоров... in pgsql – PostgreSQL
Alexey Stavrov
Всем привет.
Подскажите, как-то можно узнать время жизни самой долгой в pg транзакции (возможно за период, за месяц)?)
Т.е. хочется понять, есть ли проблемы с длинными транзакциями.

У нас клиенты делают по 7-8тыс коннекций к pg_bouncer, а pg_bouncer держит к pg 3000 коннекций.
Я подпинываю админов изменить число коннекций к pg от pg_bouncer-а хотя бы на 200, а он против, боится)

Нужно как-то аргументировать свои решения, поэтому я хотел бы узнать ответ на данный вопрос.
pg_stat_activity
источник

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
Петр Егоров
pg_stat_activity
это будут коннекты от баунсера, а не от клиентов же
источник

AS

Alexey Stavrov in pgsql – PostgreSQL
Петр Егоров
pg_stat_activity
Это текущие выполняемые,  мнея инетресует за период
источник

AS

Alexey Stavrov in pgsql – PostgreSQL
Do c Tor O r` Ry
у баунсера стата есть, по ней можно определить
Хорошо, спасибо, глянем, что там есть. Может есть ещё какие-то мысли?
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
Alexey Stavrov
Это текущие выполняемые,  мнея инетресует за период
только через внешний мониторинг
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
у постгреса нет метрик за отдельные исторические периоды - только либо рантайм (типа pg_stat_activity, pg_locks, pg_stat_progress_*), либо кумулятивные с момента сброса статистики (типа pg_stat_database, etc...)
источник

IK

Ilshat Karazbaev in pgsql – PostgreSQL
Alexey Stavrov
Всем привет.
Подскажите, как-то можно узнать время жизни самой долгой в pg транзакции (возможно за период, за месяц)?)
Т.е. хочется понять, есть ли проблемы с длинными транзакциями.

У нас клиенты делают по 7-8тыс коннекций к pg_bouncer, а pg_bouncer держит к pg 3000 коннекций.
Я подпинываю админов изменить число коннекций к pg от pg_bouncer-а хотя бы на 200, а он против, боится)

Нужно как-то аргументировать свои решения, поэтому я хотел бы узнать ответ на данный вопрос.
если было настроено логирование постгрес, то можно оттуда агрегировать статистику. Возможно, pgbadger, натравленный на логи даст убедительные графики
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Ilshat Karazbaev
если было настроено логирование постгрес, то можно оттуда агрегировать статистику. Возможно, pgbadger, натравленный на логи даст убедительные графики
в логах транзакций нет, к сожалению
источник

IK

Ilshat Karazbaev in pgsql – PostgreSQL
ну хотя бы длительность стейтментов показать, уже хорошо, можно потом прикинуть время максимально возможной транзакции исходя из ее частей. Не очень репрезентативно, но хоть что-то. В разрезе у нас транзакции не больше, чем икс секунд выполняются из вот этих стейтментов: и сумма максимального времени выполнения каждого
источник

AS

Alexey Stavrov in pgsql – PostgreSQL
Ilshat Karazbaev
если было настроено логирование постгрес, то можно оттуда агрегировать статистику. Возможно, pgbadger, натравленный на логи даст убедительные графики
Это с включенным auto_analyze в auto_explain?
Он просто проседание по производительности дает
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
Alexey Stavrov
Всем привет.
Подскажите, как-то можно узнать время жизни самой долгой в pg транзакции (возможно за период, за месяц)?)
Т.е. хочется понять, есть ли проблемы с длинными транзакциями.

У нас клиенты делают по 7-8тыс коннекций к pg_bouncer, а pg_bouncer держит к pg 3000 коннекций.
Я подпинываю админов изменить число коннекций к pg от pg_bouncer-а хотя бы на 200, а он против, боится)

Нужно как-то аргументировать свои решения, поэтому я хотел бы узнать ответ на данный вопрос.
а у вас вообще есть мониторинг базы?
если есть, то ваш вопрос снимается относительно легко - либо нахождением нужной метрики в мониторинге, либо в ее добавлении и последующем наблюдении.

если мониторинга нет, то надо заняться его добавлением - это поможет для решения этой задачи и еще кучи последующих похожих задач в будущем.
источник