본문으로 건너뛰기
multixact_member_buffers

multixact_member_buffers

버전기본값context타입
1732postmaster (재시작)integer
1832postmaster (재시작)integer
1932postmaster (재시작)integer

pg_multixact/members의 내용을 캐시하는 데 쓸 shared memory 양을 지정한다. 단위 없이 값을 주면 블록 수(BLCKSZ, 보통 8kB)로 해석하며 기본값은 32다. 서버 시작 시에만 설정할 수 있다.

multixact는 여러 트랜잭션이 같은 row에 동시에 lock을 잡을 때(예: SELECT ... FOR SHARE, 외래 키 검사) 그 구성원 목록을 기록하는 구조다. 구성원 목록 자체는 pg_multixact/members 아래 SLRU 파일에 저장되는데, 이 파라미터는 그 파일들을 메모리에 얼마나 캐시할지를 정한다. PostgreSQL 17부터 SLRU 캐시 크기를 이런 개별 파라미터로 조정할 수 있게 됐다.

운영 노트: 외래 키가 많고 동시 갱신이 심한 워크로드에서 pg_stat_slru 뷰의 multixact_member 항목에 blks_read가 꾸준히 쌓인다면 캐시 미스가 잦다는 뜻이므로 이 값을 늘리는 것을 검토할 만하다. 대부분의 환경에서는 기본값으로 충분하다.

출처: PostgreSQL 18 문서