Dirty Read Risk

오손 읽기는 틀린 값보다 “존재하지 않는 값”이 문제다

커밋되지 않은 값은 곧 rollback될 수 있으므로, 그 값을 기반으로 한 후속 업무는 모두 흔들린다.

잘못된 보고서

월말 잔액이나 재고 수량이 rollback될 값을 포함한다.

잘못된 승인

존재하지 않는 입금이나 포인트를 보고 승인 판단을 내린다.

NOLOCK 위험

일부 DBMS의 느슨한 읽기는 중복, 누락, 이동 중인 행 관찰까지 만들 수 있다.

READ COMMITTED

대부분의 실무 기본값은 커밋된 값만 읽어 오손 읽기를 막는다.

제품 차이

PostgreSQL은 READ UNCOMMITTED를 사실상 READ COMMITTED처럼 다룬다.

판단 기준

성능보다 “불일치 읽기를 의도적으로 허용하는가”를 먼저 따진다.

실무 원칙: 읽기 일관성을 포기하는 설정은 보고서, 정산, 재고, 결제 경로에서 피한다.