Api::V1::AssetsController#create (avg 125457ms, max 125457ms)
Service
cupixworks-api
Occurrences
1
Status
Reported
Confidence
85%
Actionability
28%
Cluster ID
c25d10f8-19b4-4690-85bf-6a658044bad1
First Seen
2026-07-10 07:49 UTC
Last Seen
2026-07-10 07:49 UTC
Actions
Api::V1::AssetsController#create (avg 125457ms, max 125457ms)
What Happened#
2026-07-10 16:49 KST 경 cupixworks-api (ap-southeast-2)의 Api::V1::AssetsController#create 요청이 125.5초 소요된 뒤 200 으로 완료됨. 같은 시간대에 built (team 16) 테넌트의 여러 write 엔드포인트가 Mysql2::Error::TimeoutError: Lock wait timeout exceeded (50 s) 로 502 를 반환했고, 다른 write 요청들도 60 s 이상 지연됨. RDS MySQL 의 광범위한 InnoDB row-lock contention 이벤트로 판단됨.
Quick Facts#
| Field | Value |
|---|---|
| exception.class | n/a (요청은 200 으로 완료된 latency 클러스터) |
| exception.message | n/a — 동일 시간대 sibling 요청에서 Mysql2::Error::TimeoutError: Lock wait timeout exceeded; try restarting transaction (ActiveRecord::LockWaitTimeout) 관측 |
| top_frame | app/factories/base_factory.rb:124 (self.model.save!) |
| runtime | Rails / Ruby (tesla monolith), user_agent Dart/3.12 (dart:io) (mobile client) |
| deploy | production-ap-southeast-2-20260709t0654z0-6eb3f711-cupixworks |
| env | production, region ap-southeast-2 |
Affected Teams#
| Team / Domain | Error Count | Impact |
|---|---|---|
scs-assetfuture (team 165, tenant cupix) |
1 (target cluster) | AssetsController#create 125 s 지연 — Dart 모바일 앱에서 비디오 asset 업로드 시 UI 대기 |
built (team 16, tenant cupix) |
3× 502 + 다수 slow request | CapturesController#update, PanosController#check_tile_uploading, AssetsController#update 등에서 50 s LockWaitTimeout 및 60 s+ 지연 |
Timeline#
- 2026-07-10 16:47:25 KST — 초기 정상 상태: 동일 capture(81421)
CapturesController#update요청이 810 ms(db 78 ms)로 완료. - 2026-07-10 16:48:47 KST — 첫 이상 조짐: capture 81421 update 가 39.8 s(db 33.4 s)로 지연.
- 2026-07-10 16:49:21 KST — 대상 클러스터 이벤트 발생 시각 (
first_seen).scs-assetfuture팀에서POST /api/v1/assets(capture 81477,3.mp4) 시작 — 이 시점부터 클러스터 카운트가 잡힘. - 2026-07-10 16:51:16–16:51:20 KST —
built테넌트의 세 개 요청이 정확히 50 s 만에Mysql2::Error::TimeoutError: Lock wait timeout exceeded로 502 반환 (Api::V1::AssetsController#update,Api::V1::PanosController#check_tile_uploading,Api::V1::CapturesController#update). - 2026-07-10 16:51:27 KST — 락이 해제되면서 대상
AssetsController#create요청이 125.5 s 만에 200 으로 완료. 같은 초에 19 건의 60 s 이상 걸린 요청이 일제히 완료됨(파노 stitched/check_tile_uploading, asset update, bim create_resource 등). - 2026-07-10 16:51:32 KST — capture 81421 update 가 다시 810 ms 수준으로 회복.
Scoring#
Confidence 85% · Actionability 28%
Confidence#
| Dimension | Score | Detail |
|---|---|---|
| Evidence completeness | 5/5 | 10 code refs, 12 log queries |
| Code path explicitness | 3/3 | 10 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 | 29 file(s) |
| Single repo | 1/3 | 5 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 |