ES /docs

Api::V1::AnnotationsController#update (avg 493359ms, max 493359ms)

Service
cupixworks-api
Occurrences
1
Status
Reported
Confidence
85%
Actionability
28%
Cluster ID
90018c38-e05a-4d84-a66d-bc36f8b9e65b
First Seen
2026-07-17 05:23 UTC
Last Seen
2026-07-17 05:23 UTC
Actions

Api::V1::AnnotationsController#update (avg 493359ms, max 493359ms)

What Happened#

2026-07-17 14:23:41 KST 무렵, ap-southeast-2 리전의 cupixworks-api 서비스에서 PUT /api/v1/reviews/w7bfdg/annotations/13653 요청 1건이 약 493.4초 동안 실행된 뒤 200 OK로 응답했다. 동일 시간대에 같은 Facility(ID 2947)를 대상으로 하는 PanosController#check_uploading, PanosController#update_meta_by_key, EditingsController#update 요청들이 반복적으로 Mysql2::Error::TimeoutError: Lock wait timeout exceeded / ActiveRecord::Deadlocked 로 실패하고 있어, MySQL row-lock 경합이 원인으로 판단된다.

Quick Facts#

Field Value
cluster_type latency
resource_name Api::V1::AnnotationsController#update
avg_duration_ms 493359
max_duration_ms 493359
sample_trace_id 4435704688727578565
top_frame app/repositories/annotation_repository.rb:23 (@model.save!)
env production
region ap-southeast-2
tenant cupix
facility_id 2947 (from EntityUpdates::Child 로그)

Affected Teams#

Team / Domain Error Count Impact
cupixworks-api (Review/Annotation 편집) 1 slow 200 (this cluster) 클라이언트 요청이 8분 넘게 블록되어 사실상 실패로 인지됨
cupixworks-api (Pano/Editing 업로드) 최소 8 (LockWaitTimeout 7 + Deadlock 1, 14:17-14:40 KST) 502/503 에러로 업로드/편집 실패

Timeline#

  1. 2026-07-17 14:17:57 KSTPUT /api/v1/panos/14851724/check_uploading ActiveRecord::LockWaitTimeout (502) 첫 발생. Facility 2947 관련 다중 요청 경합 시작.
  2. 2026-07-17 14:18:49 / 14:19:45 / 14:20:43 KST — 동일 pano 14851724 에서 LockWaitTimeout 반복.
  3. 2026-07-17 14:23:41 KST — 문제의 PUT /api/v1/reviews/w7bfdg/annotations/13653 요청 시작 (span first_seen).
  4. 2026-07-17 14:24:49 KST — 같은 annotation 13653 에 대한 별도 PUT 200 완료 (동시 편집 정황).
  5. 2026-07-17 14:25:29 ~ 14:26:35 KST — Facility 2947 하위 Annotation 들의 reset_parent_cached_entity_updates 로그 다수 (동시 업데이트 진행 중).
  6. 2026-07-17 14:31:54 KST — 문제 요청 200 OK 로 응답 (span 종료, 493.359s 소요).
  7. 2026-07-17 14:31:57 KST — trace 4435704688727578565Annotation#_update_document, reset_parent_cached_entity_updates, Cupix::EventService.publish_event 후처리 로그.
  8. 2026-07-17 14:34:44 ~ 14:40:03 KST — 같은 window 에서 다른 Pano/Editing 요청에 LockWaitTimeout/Deadlocked 계속 발생.

Scoring#

Confidence 85% · Actionability 28%

Confidence#

Dimension Score Detail
Evidence completeness 5/5 11 code refs, 9 log queries
Code path explicitness 3/3 11 file:line refs
Log evidence 3/3 section, query, pattern
RCA structure 3/3 3/3 sections
Revision history 0/3 0 revision(s)
Agent execution 3/3 success

Actionability#

Dimension Score Detail
Fix complexity 1/5 critical
Affected files 1/5 8 file(s)
Single repo 1/3 7 service(s)
Immediate actions 0/3 absent
Testability 0/3 no test info
External dependency 1/3 external deps found
Data migration 3/3 no migration