log_temp_files
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 14 | — | superuser | integer |
| 15 | — | superuser | integer |
| 16 | — | superuser | integer |
| 17 | — | superuser | integer |
| 18 | — | superuser | integer |
| 19 | — | superuser | integer |
지정한 크기 이상의 temp file이 삭제될 때 그 이름과 크기를 log에 남긴다.
temp file은 정렬, hash, 임시 쿼리 결과 저장을 위해 만들어진다. 이 설정을 켜면 temp file이 삭제되는 시점에 파일 크기(바이트)와 함께 log 항목이 남는다. 0이면 모든 temp file 정보를 기록하고, 양수면 그 크기 이상인 파일만 기록한다. -1(기본값)이면 기록하지 않는다. 단위 없이 값을 주면 킬로바이트로 해석한다.
운영 노트:
work_mem 튜닝의 핵심 관측 지표다. 특정 쿼리에서 temp file이 반복적으로 기록된다면 정렬·hash가 메모리 안에서 끝나지 못한다는 신호이므로, 해당 쿼리의 work_mem을 올리거나 쿼리를 손볼 근거가 된다. 처음에는 0으로 전부 기록해 보고, 노이즈가 많으면 임계값을 올리는 방식이 무난하다.출처: PostgreSQL 18 문서