default_transaction_deferrable
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 14 | off | user | boolean |
| 15 | off | user | boolean |
| 16 | off | user | boolean |
| 17 | off | user | boolean |
| 18 | off | user | boolean |
| 19 | off | user | boolean |
새 transaction의 기본 deferrable 상태를 정한다. 기본값은 off다.
이 속성은 serializable isolation level에서 실행되는 read-only transaction에만 의미가 있다. deferrable로 표시된 read-only transaction은 시작이 잠시 지연될 수 있지만, 일단 실행을 시작하면 serializability 보장을 위한 오버헤드 없이 진행되며 동시 업데이트 때문에 강제로 중단될 일도 없다. 그래서 오래 걸리는 read-only transaction — 대형 리포트 쿼리 같은 작업 — 에 적합하다.
read-write transaction이나 serializable보다 낮은 isolation level에서 도는 transaction에는 현재 아무 효과가 없다. 개별 transaction 단위로는 SET TRANSACTION으로 지정할 수 있다.
출처: PostgreSQL 18 문서