유저 소유 쿠폰의 낙관적 락 실패, 재시도해야 할까?
·
카테고리 없음
배경결제 승인 처리 중 유저가 보유한 쿠폰을 사용 처리하는 흐름이 있다. 쿠폰 엔티티에는 @Version 기반 낙관적 락이 적용되어 있고, OptimisticLockingFailureException 발생 시 재시도 없이 예외를 던져 결제를 실패시킨다. @Transactional fun use(ownedCouponId: Long) { try { val ownedCoupon = ownedCouponRepository.findByIdOrNull(ownedCouponId) ?: throw CoreException(ErrorType.OWNED_COUPON_INVALID) ownedCoupon.use() } catch (e: Optimi..