tx lock1 [ETC] Merge 문의 동시성 최근 회사에서 검수 기능을 고도화하는 업무가 있었습니다. 상품을 스캔한 후 적절한 비즈니스 로직에 따라 수량을 데이터베이스에 자동으로 저장하는 로직입니다. @Transactional public void inspectGoods(goods request) { // 상품 정보 조회 Goods goods = findGoods(request); // 상품 상태에 따른 입고 수량 설정 로직 // 상품 검수 merge(goods); } 검수 기능의 흐름은 대략적으로 위 코드와 같습니다. 기존에 존재하던 기능에서 수량 설정 로직만 추가되었고 추가로 QC를 진행 후 정상적인 과정을 통해 운영에 신규 기능이 배포되었습니다. 하지만 며칠 뒤 APM 모니터링을 통해 신규 개발 API 에 primary key violatio.. 2024. 3. 24. 이전 1 다음