generated from pricelees/issue-pr-template
refactor: 배포 환경에서 slow-query의 원인이 된 NOT EXIST -> LEFT JOIN 수정
This commit is contained in:
parent
82f3e56770
commit
aa3267c5a8
@ -134,14 +134,14 @@ interface ScheduleRepository : JpaRepository<ScheduleEntity, Long> {
|
||||
s.id
|
||||
FROM
|
||||
schedule s
|
||||
LEFT JOIN
|
||||
reservation r
|
||||
ON
|
||||
r.schedule_id = s.id AND r.status IN ('PENDING', 'PAYMENT_IN_PROGRESS')
|
||||
WHERE
|
||||
s.status = 'HOLD'
|
||||
AND s.hold_expired_at <= :now
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM reservation r
|
||||
WHERE r.schedule_id = s.id AND (r.status = 'PENDING' OR r.status = 'PAYMENT_IN_PROGRESS')
|
||||
)
|
||||
AND r.id IS NULL
|
||||
FOR UPDATE SKIP LOCKED
|
||||
""", nativeQuery = true
|
||||
)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user