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
F19943827: D19454.id46535.diff
Thu, Apr 16, 6:45 AM
F19914860: D19454.diff
Fri, Apr 3, 3:00 PM
F19908107: D19454.diff
Wed, Apr 1, 4:19 PM
F19907040: D19454.id.diff
Wed, Apr 1, 7:30 AM
F19670434: D19454.id46536.diff
Feb 7 2026, 10:56 PM
F19670426: D19454.id46536.diff
Feb 7 2026, 10:54 PM
F19668770: D19454.diff
Feb 7 2026, 7:50 PM
F19661389: D19454.id46536.diff
Feb 7 2026, 6:41 AM
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