autovacuum_freeze_score_weight
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 19 | 1 | sighup | string |
autovacuum 우선순위 score에서 transaction ID age 구성 요소의 비중을 정한다. PostgreSQL 19(beta)에서 추가된 파라미터로, 기본값은 1.0이다.
PostgreSQL 19(beta)는 autovacuum이 처리할 테이블을 고르는 방식을 score 기반 우선순위 체계로 바꿨다. threshold를 넘은 테이블을 발견한 순서대로 처리하는 대신, 테이블마다 여러 구성 요소를 합산한 score를 계산해 급한 테이블부터 vacuum·analyze한다. autovacuum_vacuum_score_weight, autovacuum_vacuum_insert_score_weight, autovacuum_analyze_score_weight, autovacuum_freeze_score_weight, autovacuum_multixact_freeze_score_weight가 각 구성 요소의 비중을 담당하며, 기본값은 모두 1.0으로 어느 한쪽도 특별히 우대하지 않는다.
이 파라미터는 그중 transaction ID age 구성 요소, 즉 테이블의 transaction ID 나이가 오래돼 freeze가 시급해진 정도가 score에 반영되는 비중을 조절한다. transaction ID wraparound를 막는 freeze 작업이 다른 vacuum·analyze 수요에 밀리지 않게 하려면 이 값을 키운다. multixact ID 나이에 대해서는 autovacuum_multixact_freeze_score_weight가 같은 역할을 한다. postgresql.conf 파일이나 서버 command line에서만 설정할 수 있다.
pg_stat_autovacuum_scores view로 확인할 수 있다.출처: PostgreSQL 19 문서