읽기 직렬화 제약 때문에 대기나 재시도가 늘 수 있습니다.
격리 수준이 올라가면 처리량은 내려가지만, MVCC에서는 일반 조회가 스냅샷 읽기로 수행되므로 READ COMMITTED와 REPEATABLE READ의 차이가 항상 크게 벌어지지는 않습니다.
SELECT ... FOR UPDATE 같은 Locking Read와 쓰기 충돌, 특히 Gap Lock 경합에서 드러납니다.
현재 커밋된 버전을 기준으로 읽음
트랜잭션 안에서 더 안정적인 조회 기준 유지
충돌 감시와 대기 비용이 가장 큼
읽기 자체는 잠금 경합이 적어 처리량이 잘 나옵니다.
읽기는 비슷하지만 더 오래 같은 조회 기준을 유지합니다.
읽기 직렬화 제약 때문에 대기나 재시도가 늘 수 있습니다.
FOR UPDATE, 갱신, 범위 충돌
락을 잡더라도 범위 제약이 덜해 체감 비용이 완만합니다.
Gap Lock 같은 범위 락 경합 때문에 쓰기와 Locking Read 비용이 올라갈 수 있습니다.
충돌 억제가 가장 강한 대신 처리량 저하가 가장 크게 나타납니다.