{"id":"IL-0372","org":"Heroku","date":"2021-02-25","docs":[],"title":{"en":"Heroku apps could not connect to about 1% of hobby-tier Postgres databases after the databases' host names changed","ko":"Hobby 등급 Heroku Postgres 데이터베이스 약 1%의 연결 문자열이 바뀌어 앱이 17시간 동안 연결하지 못했다"},"domain":["database"],"impact":{"scope":"Connections from Heroku apps to about 1% of hobby-tier Heroku Postgres databases","users":"unknown","region":"unknown"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":null,"related":[],"sources":[{"url":"https://status.heroku.com/incidents/2208","kind":"official-status","archived":"https://web.archive.org/web/20251114154705/https://status.heroku.com/incidents/2208"}],"summary":{"en":"During an upgrade process in an upstream system, the host names of several shared database systems that host hobby-tier Heroku Postgres databases were changed by mistake. The new host names were not passed to the systems that update Heroku apps with new information, so the connection strings in the attached apps pointed at the old names and the apps could not connect. Soon after the problem was detected, Heroku halted the upgrade process to limit the impact. Engineers then updated all the relevant systems with the new information and published a new release on each affected app, and during the incident customers were given a workaround of rotating their database credentials. Error rates were back to normal at 18:29 UTC, and the follow-up puts the end of the impact at 17:10 UTC.","ko":"2021년 2월 25일 00:00 UTC 부터 17:10 UTC 까지 Hobby 등급 Heroku Postgres 데이터베이스 약 1%에 앱이 연결하지 못했다. 상위 시스템의 업그레이드 과정에서 공유 데이터베이스 시스템 여러 대의 호스트 이름이 잘못 바뀌었고, 이 변경이 Heroku 앱에 새 정보를 반영하는 시스템에 전달되지 않았다. 그래서 데이터베이스의 연결 문자열은 바뀌었는데 붙어 있는 앱은 새 연결 문자열을 받지 못했다. 문제를 알아챈 직후 업그레이드 과정을 멈춰 영향이 넓어지지 않게 했다. 엔지니어들은 관련 시스템을 모두 새 정보로 갱신하고 영향받은 앱에 새 릴리스를 냈다. 그 사이 고객에게는 데이터베이스 자격 증명을 바꿔 직접 문제를 푸는 우회 방법을 안내했다."},"trigger":{"en":"An upgrade process in an upstream system wrongly changed the host names of several shared database systems.","ko":"상위 시스템의 업그레이드 과정에서 공유 데이터베이스 시스템 여러 대의 호스트 이름이 잘못 바뀌었다."},"severity":"unknown","symptoms":["stale-service-routing","high-error-rate"],"timeline":{"detected_after":null,"resolved_after":"17h 10m"},"date_kind":"incident","detection":null,"components":["database","service-discovery"],"root_cause":"upgrade-breaking-change","remediation":[{"text":{"en":"Halted the upstream upgrade process","ko":"문제를 알아챈 직후 업그레이드 과정을 멈춰 영향이 넓어지지 않게 했다."}},{"text":{"en":"Updated the relevant systems with the new host names and published a new release on the affected apps","ko":"관련 시스템을 모두 새 호스트 정보로 갱신하고, 영향받은 앱에 새 릴리스를 냈다."}},{"text":{"en":"Gave customers a workaround of rotating database credentials with heroku pg:credentials:rotate","ko":"고객에게 `heroku pg:credentials:rotate` 로 데이터베이스 자격 증명을 바꾸는 우회 방법을 안내했다. 자격 증명이 여럿이면 `--all` 플래그를 붙이게 했고, 이렇게 하면 영향받은 데이터베이스가 다시 연결됐다."}}],"action_items":[{"text":{"en":"Improve monitoring to detect similar incidents","ko":"비슷한 장애를 잡을 수 있게 모니터링을 개선한다."}},{"text":{"en":"Provide tooling and documentation that shorten recovery from a similar incident","ko":"비슷한 장애가 다시 나면 복구 시간을 줄일 수 있도록 도구와 문서를 만들었다."}}],"contributing":[],"recurrence_of":null,"symptoms_text":{"en":"From 00:00 UTC on 25 February 2021, Heroku apps attached to about 1% of hobby-tier Postgres databases could not connect to their databases. Heroku first posted that it was investigating connectivity issues with Hobby tier databases at 03:39 UTC.\n\nThe connection strings of the affected databases had changed, but the attached apps still had the old ones. While the fix was rolling out, a database owner could bring the database back by rotating its credentials with `heroku pg:credentials:rotate`, adding the `--all` flag when the database had several credentials.","ko":"Heroku 앱이 붙어 있는 Hobby 등급 Postgres 데이터베이스 약 1%에 연결하지 못했다. 상태 페이지는 2021년 2월 25일 03:39 UTC 에 Hobby 등급 데이터베이스의 연결 문제를 조사한다고 알렸다.\n\n영향받은 데이터베이스는 연결 문자열이 바뀌었는데, 그 데이터베이스가 붙은 Heroku 앱에는 새 연결 문자열이 전달되지 않았다. 그래서 앱이 데이터베이스에 연결하지 못했다.\n\n영향은 00:00 UTC 에 시작됐다. 04:17 UTC 에 원인을 찾아 완화를 시작했고, 11:27 UTC 부터 수정을 내보냈다. 16:16 UTC 공지는 끝나기까지 몇 시간이 더 걸린다고 했다. 사후 보고는 영향이 17:10 UTC 에 끝났다고 적었고, 18:29 UTC 공지는 수정이 나가 오류율이 정상으로 돌아왔다고 알렸다."},"updated_at":"2026-11-14T12:34:02.439997Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0372","org_slug":"heroku"}