Size: a a a

pgsql – PostgreSQL

2021 February 09

b🍉

baklawan 🍉 in pgsql – PostgreSQL
Переслано от baklawan 🍉
я ведь правильно понимаю, что restart_lsn полностью управляется постгресом и подписчик не может его двигать? подписчик может только обновить confirmed_flush_lsn?
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
Viktor Grigorev
спасибо, попробую.

perf показывает в топе по overhead hash_search_with_hash_value 11%
используете партиционирование?
источник

VG

Viktor Grigorev in pgsql – PostgreSQL
да, партиционирование используется, версия pg 11.7
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
baklawan 🍉
Переслано от baklawan 🍉
я ведь правильно понимаю, что restart_lsn полностью управляется постгресом и подписчик не может его двигать? подписчик может только обновить confirmed_flush_lsn?
Да, насколько я помню. Поэтому (занудно: если это не bug) можно посмотреть, что его "держит" на источнике (давно не было CHECKPOINT? Есть долгие открытые транзакции? Prepared transactions (точно не помню, относятся ли они сюда вообще)? Что я ещё забыл? ;) ).
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
Viktor Grigorev
да, партиционирование используется, версия pg 11.7
а как много партиций и какой в среднем размер/интервал? (вдруг у вас сотни тысяч "минутных" партиций)
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
попробуйте собрать побольше информации и запостить в pgsql-bugs, -performance
источник

VG

Viktor Grigorev in pgsql – PostgreSQL
Alexey Lesovsky
а как много партиций и какой в среднем размер/интервал? (вдруг у вас сотни тысяч "минутных" партиций)
под сотню разных таблиц, в каждой по ~1.5к партиций, интервал - 1 int - foreign key
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
хм, это получается примерно ~150k партиций суммарно, и по большей части таблиц осуществляется поиск?
а как давно вообще проблему заметили?
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
я бы еще собрал топ запросов по времени выполнения с pg_stat_statements, и выборочно бы повыполнял бы их с explain analyze, любопытно посмотреть на время планирования

например таким отчетом
https://github.com/dataegret/pg-utils/blob/master/sql/global_reports/query_stat_total.sql
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
но опять же... если предположить что время уходит на внутри-постгресовые функции (hash_search_with_hash_value в качестве подозреваемого), то не совсем понятно почему sy высокий🤔
источник

РЖ

Роман Жарков... in pgsql – PostgreSQL
Alexey Lesovsky
но опять же... если предположить что время уходит на внутри-постгресовые функции (hash_search_with_hash_value в качестве подозреваемого), то не совсем понятно почему sy высокий🤔
Скорее всего на lwlocks мрёт во время планирования запроса.
Как-то оно зверски неэффективно работает с большим числом партиций.
источник

VG

Viktor Grigorev in pgsql – PostgreSQL
Alexey Lesovsky
я бы еще собрал топ запросов по времени выполнения с pg_stat_statements, и выборочно бы повыполнял бы их с explain analyze, любопытно посмотреть на время планирования

например таким отчетом
https://github.com/dataegret/pg-utils/blob/master/sql/global_reports/query_stat_total.sql
этим отчетом
pos:1  total time: 00:38:30 (23.3%, CPU: 23.3%, IO: 22.8%)  calls: 2,584,541 (38.02%)  avg_time: 0.89ms (IO: 5.6%)
       query: other

pos:2  total time: 00:31:10 (18.9%, CPU: 19.9%, IO: 0.0%)  calls: 157 (0.00%)  avg_time: 11913.91ms (IO: 0.0%)
user: okagent  db: mydb2  rows: 3,368,914 (3.51%)  

статистику сегодня сбрасывал пару часов назад. странно, что okmeter на втором месте
источник

MZ

Michael マイケル Zhilin ... in pgsql – PostgreSQL
Viktor Grigorev
спасибо, попробую.

perf показывает в топе по overhead hash_search_with_hash_value 11%
Подскажите пожалуйста а сколько shared_buffers? И какое железо используется (cpu, qpi/upi, ram)?
источник

I

Ivan in pgsql – PostgreSQL
Подскажите быстрый способ прокачать postgres дебаг, highload, используя домашний ноут (может сайт какой-то есть обучающий или классная книжка).
источник

VG

Viktor Grigorev in pgsql – PostgreSQL
Michael マイケル Zhilin ジリン
Подскажите пожалуйста а сколько shared_buffers? И какое железо используется (cpu, qpi/upi, ram)?
64GB ram, 16gb shared_buffers, Intel(R) Xeon(R) CPU E3-1275 v5, upi/qpi - не сталкивался, не мой кейс наверно
источник

MZ

Michael マイケル Zhilin ... in pgsql – PostgreSQL
Viktor Grigorev
64GB ram, 16gb shared_buffers, Intel(R) Xeon(R) CPU E3-1275 v5, upi/qpi - не сталкивался, не мой кейс наверно
Ясно. Интересно было бы через ebpf или perf построить flamegraph, хотя бы на ядро. Можем в vfs уходить много из-за кривой schedulerа (cfs) или в сеть ведь пакетов много приходит-уходит.
источник

ll

low low in pgsql – PostgreSQL
Всем привет. Я делаю когда UPDATE и добавляю WHERE хочу чтобы обновление происходило с сохранением порядка, если эта первая строка, то чтобы так и было а не перезаписывало в конец базы, подскажите что делать
источник

DG

Dimitri Grinkevich in pgsql – PostgreSQL
low low
Всем привет. Я делаю когда UPDATE и добавляю WHERE хочу чтобы обновление происходило с сохранением порядка, если эта первая строка, то чтобы так и было а не перезаписывало в конец базы, подскажите что делать
оформлять полное служебное несоответствие
источник

VR

Vladimir Ryzhov in pgsql – PostgreSQL
либо я не так понял либо селект был без сортировки
источник

IZ

Ilia Zviagin in pgsql – PostgreSQL
low low
Всем привет. Я делаю когда UPDATE и добавляю WHERE хочу чтобы обновление происходило с сохранением порядка, если эта первая строка, то чтобы так и было а не перезаписывало в конец базы, подскажите что делать
с сохранением порядка ЧЕГО?
источник