Конфликты при закреплении блоков (BufferPin) в PostgreSQL
Купить в 1 клик

Не хватает прав доступа к веб-форме.

Спасибо за заказ!
Ошибка!
В ближайшее время наш менеджер свяжется с вами.

Мы работаем для Вас!

Время работы:  Пн-Пт   10 -17; Сб.-Вск  выходной

1280x800 532x281
19.апр.2026

Конфликты при закреплении блоков (BufferPin) в PostgreSQL

Ожидания получения BufferPin включают в себя:1) Конфликты BufferPin на репликах (recovery conflict). Процесс на реплике startup должен получить блокировку на буфер, чтобы проиграть (replay, apply, накатить журнальную запись) hotcleanup, для этого startup должен дождаться pincount=0. Быстрая очистка происходит часто и процесс startup, если столкнется с блокировкой, полностью приостановит накат. Накатом занимается только он и в один поток. Из-за частых ожиданий BufferPin отставание реплики растёт и кажется, что startup не справляется и кажется, что проблема в том, что он однопоточный. Мониторинг таких ситуаций затруднён, так как в представлении pg_stat_database_conflicts отражаются только конфликты, которые привели к прерыванию запросов на реплике, то есть, когда startup приостанавливал работу более, чем на max_standby_streaming_delay (по умолчению, 30 секунд):Из-за таких конфликтов, используют реплику, которая не обслуживает запросы, чтобы она не отставала из-за конфликтов и на реплику можно было быстро переключиться.2) конфликты с автовакуумом при заморозке страниц. Такие конфликты есть и на мастере и на реплике и начинаются через 100 миллионов транзакций (по умолчанию, до 18 версии PostgreSQL). При недолгих тестированиях приложений не отлавливаются, проблемы начинаются при эксплуатации. Это одна из причин, по которой нагрузочные тесты длятся долго. Зная, как работает PostgreSQL, можно использовать недолгие тесты и оптимизировать приложение и параметры экземпляра, используя результаты недолгих тестов для обратной связи при настройке. Читать далее

Название: Конфликты при закреплении блоков (BufferPin) в PostgreSQL
Ссылка на источник:  https://habr.com/ru/articles/1025254/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1025254

Возврат к списку