RecordExtra 데드락 문제 및 Gap Lock 분석

Source

  • Field Notes/ReturnZero/Daily Notes/Day 55. 2021-08-24.md

Summary

개발 55일차 일지. 아노미 상태로 업무 효율이 낮았으며, RecordExtra 테이블 저장 시 발생하는 데드락 문제를 분석하고 있다. 보조 인덱스 사용 시 발생하는 Gap Lock 현상을 확인하고, SELECT FOR UPDATE 대신 Record 테이블의 락을 활용하여 해결하려는 시도와 그 이론적 근거를 기록함.

Key Points

  • RecordExtra 테이블 저장 시 데드락 발생 (GitHub PR #211 관련)
  • 원인 분석: 보조 인덱스 사용 시 Gap Lock 발생 가능성 확인
  • 해결 방안: RecordExtra 직접 락 대신 상위 Record 테이블의 락 활용 (row 존재 보장)
  • 현재 상태: 이론적 타당성은 확인되었으나 실제 검증 방법 미정