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
F15435314: D19454.diff
Tue, Mar 25, 7:47 AM
F15419313: D19454.id.diff
Fri, Mar 21, 5:14 AM
F15418049: D19454.diff
Thu, Mar 20, 8:26 PM
F15409008: D19454.id.diff
Wed, Mar 19, 2:42 AM
F15406854: D19454.id46535.diff
Tue, Mar 18, 2:17 PM
F15402636: D19454.id46535.diff
Mon, Mar 17, 11:26 PM
F15331337: D19454.diff
Mar 7 2025, 9:01 AM
Unknown Object (File)
Feb 26 2025, 3:51 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