- 팬텀의 문제가 lockable 객체가 존재하지 않는 것이라면 인위적으로 잠금할 수 있는 객체를 추가하면 되는 일 아닌가?
ex) 회의실의 경우
- 미리 예약 조합에 대해 로우를 만들어두고 해당 키가 잠겼는지 판단해서 잠겨있으면 abort후 다시 시도 (일종의 캐시 키 값을 잡아둠)
- 팬텀을 ˜ 존재하는 구체적인 로우집합에 대한 잠금 충돌로 변환
- 문제
- 충돌을 구체화하는 방법을 알아내기 어렵고 오류가 발생하기 쉬움
- 동시성 제어 메커니즘이 어플리케이션 데이터 모델로 나오는게 보기 좋지 않음 ⇒ 이러한 문제로 인해 직렬성 격리 수준이 훨씬 선호된다.
- 충돌을 구체화하는 방법을 알아내기 어렵고 오류가 발생하기 쉬움