문제를 불러오는 중...
문제를 불러오는 중...
404Vibe 콘퍼런스에는 좌석 예약 기능이 있다.
예약 테이블은 대략 다음과 같다.
예약 API는 사용자가 좌석을 선택하면 먼저 해당 좌석의 예약 여부를 조회하고,
예약된 데이터가 없으면 새로운 예약을 INSERT한다.
평소에는 문제가 없었지만 인기 세션 예약이 열린 직후 사고가 발생했다.
두 사용자가 거의 동시에 A-17 좌석을 선택했고,
두 요청 모두 조회 시점에는 "예약 가능"으로 판단됐다.
결과적으로 서로 다른 예약 ID를 가진
A-17 좌석 예약이 2건 저장됐다.
이 문제의 재발을 가장 확실하게 막기 위한 방법은?
선택지를 고른 뒤 제출하면 정답과 해설을 확인할 수 있어요.