본문으로 건너뛰기
max_slot_wal_keep_size

max_slot_wal_keep_size

버전기본값context타입
14sighupinteger
15sighupinteger
16sighupinteger
17sighupinteger
18sighupinteger
19sighupinteger

replication slot이 checkpoint 시점에 pg_wal 디렉토리에 보존하도록 허용되는 WAL 파일의 최대 크기를 정한다. 단위 없이 값을 주면 메가바이트로 해석하고, 기본값 -1은 무제한이다. postgresql.conf나 서버 커맨드라인에서만 설정할 수 있으며, slot이 있는 sending 서버(보통 primary)에 적용된다.

slot의 restart_lsn이 현재 LSN보다 이 크기 이상 뒤처지면 slot에 필요한 WAL 파일이 제거될 수 있고, 그 slot을 쓰던 standby는 replication을 이어갈 수 없게 된다. slot별 WAL 가용 상태는 pg_replication_slotswal_status 컬럼으로 확인할 수 있다.

운영 노트: 기본값 -1은 끊긴 standby나 버려진 slot이 pg_wal을 디스크가 가득 찰 때까지 키울 수 있다는 뜻이다. 디스크 여유를 감안한 상한을 두는 편이 안전하지만, 상한에 걸려 slot이 invalidate되면 해당 standby는 pg_basebackup 등으로 재구축해야 할 수 있다. 이 트레이드오프를 이해하고 값을 정해야 한다.

출처: PostgreSQL 18 문서