Page MenuHomePhabricator

When database connection exceptions occur, raise them to the setup layer
ClosedPublic

Authored by epriestley on May 17 2018, 1:03 PM.
Tags
None
Referenced Files
F18855307: D19454.id46536.diff
Sat, Nov 1, 4:50 AM
F18851767: D19454.id.diff
Fri, Oct 31, 3:59 AM
F18850665: D19454.diff
Thu, Oct 30, 6:32 PM
F18834929: D19454.id46535.diff
Sun, Oct 26, 12:00 PM
F18834668: D19454.id46536.diff
Sun, Oct 26, 10:07 AM
F18796204: D19454.diff
Oct 17 2025, 3:07 AM
F18783015: D19454.diff
Oct 13 2025, 3:19 AM
F18770940: D19454.id.diff
Oct 8 2025, 4:24 PM
Subscribers
None

Details

Summary

Ref T13141. Currently, during first-time setup we don't surface all the details about connection exceptions that we could: the underlying exception is discarded inside cluster connection management.

This isn't a huge issue since the reason for connection problems is usually fairly obvious, but in at least one case (see T13141) we hit a less-than-obvious exception.

Instead, store the original exception and propagate the message up the stack so users have more information about the problem.

Test Plan
  • Configured an intentionally bad MySQL username.
  • Restarted Apache and loaded Phabricator.
  • Got a more helpful exception with a specific authentication error message.

Screen Shot 2018-05-17 at 5.56.31 AM.png (968×1 px, 138 KB)

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable