IL-0372 Heroku · 2021-02-25database
Hobby 등급 Heroku Postgres 데이터베이스 약 1%의 연결 문자열이 바뀌어 앱이 17시간 동안 연결하지 못했다
2021년 2월 25일 00:00 UTC 부터 17:10 UTC 까지 Hobby 등급 Heroku Postgres 데이터베이스 약 1%에 앱이 연결하지 못했다. 상위 시스템의 업그레이드 과정에서 공유 데이터베이스 시스템 여러 대의 호스트 이름이 잘못 바뀌었고, 이 변경이 Heroku 앱에 새 정보를 반영하는 시스템에 전달되지 않았다. 그래서 데이터베이스의 연결 문자열은 바뀌었는데 붙어 있는 앱은 새 연결 문자열을 받지 못했다. 문제를 알아챈 직후 업그레이드 과정을 멈춰 영향이 넓어지지 않게 했다. 엔지니어들은 관련 시스템을 모두 새 정보로 갱신하고 영향받은 앱에 새 릴리스를 냈다. 그 사이 고객에게는 데이터베이스 자격 증명을 바꿔 직접 문제를 푸는 우회 방법을 안내했다.
- 심각도
- –
- 영향 범위
- Connections from Heroku apps to about 1% of hobby-tier Heroku Postgres databases
- 영향 사용자
- –
- 지역
- –
- 감지까지
- –
- 복구까지
- 17h 10m
증상
Heroku 앱이 붙어 있는 Hobby 등급 Postgres 데이터베이스 약 1%에 연결하지 못했다. 상태 페이지는 2021년 2월 25일 03:39 UTC 에 Hobby 등급 데이터베이스의 연결 문제를 조사한다고 알렸다.
영향받은 데이터베이스는 연결 문자열이 바뀌었는데, 그 데이터베이스가 붙은 Heroku 앱에는 새 연결 문자열이 전달되지 않았다. 그래서 앱이 데이터베이스에 연결하지 못했다.
영향은 00:00 UTC 에 시작됐다. 04:17 UTC 에 원인을 찾아 완화를 시작했고, 11:27 UTC 부터 수정을 내보냈다. 16:16 UTC 공지는 끝나기까지 몇 시간이 더 걸린다고 했다. 사후 보고는 영향이 17:10 UTC 에 끝났다고 적었고, 18:29 UTC 공지는 수정이 나가 오류율이 정상으로 돌아왔다고 알렸다.
원인
- 촉발
- 상위 시스템의 업그레이드 과정에서 공유 데이터베이스 시스템 여러 대의 호스트 이름이 잘못 바뀌었다.
감지
–
조치
- 문제를 알아챈 직후 업그레이드 과정을 멈춰 영향이 넓어지지 않게 했다.
- 관련 시스템을 모두 새 호스트 정보로 갱신하고, 영향받은 앱에 새 릴리스를 냈다.
- 고객에게 `heroku pg:credentials:rotate` 로 데이터베이스 자격 증명을 바꾸는 우회 방법을 안내했다. 자격 증명이 여럿이면 `--all` 플래그를 붙이게 했고, 이렇게 하면 영향받은 데이터베이스가 다시 연결됐다.
후속 조치
- 비슷한 장애를 잡을 수 있게 모니터링을 개선한다.
- 비슷한 장애가 다시 나면 복구 시간을 줄일 수 있도록 도구와 문서를 만들었다.
교훈
–
출처
- https://status.heroku.com/incidents/2208 · official-status · 보관본
관련 사례
IL-0572Merpay 회계 이벤트 처리 시스템에서 Cloud Pub/Sub 메시지 1000만 건이 밀려 새 회계 데이터가 하루 넘게 Cloud Spanner에 들어가지 못했다Mercari · 2026같은 원인 · 공통 데이터베이스
같은 원인 · 공통 데이터베이스
같은 원인 · 공통 데이터베이스
IL-0316밀린 배포가 한꺼번에 몰린 Control Plane 에서 새 버전 PgBouncer 가 CPU 와 메모리를 비정상적으로 많이 써 데이터베이스 연결이 타임아웃됐다Railway · 2025같은 원인 · 공통 데이터베이스
같은 원인 · 공통 데이터베이스
IL-0444Aurora MySQL 에서 ALTER TABLE 을 실행할 때마다 그 테이블을 reader 로 읽던 커넥션이 끊겨 애플리케이션 오류가 쏟아졌다Repro · 2024같은 원인 · 공통 데이터베이스
IL-0117인그레스 업그레이드가 네트워크 컨트롤 플레인 회귀를 일으켜 데이터 플레인이 잠깐 끊겼고, 한꺼번에 재시작한 서비스들이 백엔드 저장소에 과부하를 일으켜 OpenAI API 오류가 늘었다OpenAI · 2024같은 원인 · 공통 데이터베이스
같은 원인 · 공통 데이터베이스
IL-0308RevenueCat 이 Aurora PostgreSQL 10 에서 14 새 클러스터로 넘어간 직후 쿼리가 극도로 느려져 대시보드와 SDK 엔드포인트가 세 시간 넘게 실패했다RevenueCat · 2022같은 원인 · 공통 데이터베이스
같은 원인 · 공통 데이터베이스
내 클러스터에도 있는지 확인하기
AI 도구와 스크립트용
- 이 사례의 JSON: https://incidentlib-api.benchlet.com/cases/IL-0372
- 가장 비슷한 사례들: https://incidentlib-api.benchlet.com/cases/IL-0372/similar
- MCP 서버(Streamable HTTP, 키 없음):
https://incidentlib-mcp.benchlet.com/mcp
API 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.