Page MenuHomePhabricator

Add a friendlier "in flight" error page
ClosedPublic

Authored by epriestley on Sep 6 2016, 8:53 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Mar 26, 10:16 PM
Unknown Object (File)
Tue, Mar 26, 5:19 PM
Unknown Object (File)
Tue, Mar 26, 5:08 PM
Unknown Object (File)
Tue, Mar 26, 4:53 PM
Unknown Object (File)
Mon, Mar 25, 10:38 PM
Unknown Object (File)
Thu, Mar 21, 5:03 PM
Unknown Object (File)
Wed, Mar 20, 6:05 PM
Unknown Object (File)
Sun, Mar 10, 6:26 AM
Subscribers
None

Details

Summary

Ref T11589. When we hit a fatal setup issue (essentially always a connection failure) after we've already survived them on at least one request, we can be pretty sure a server went down and that the problem is not a setup/configuration issue.

In this case, show a friendlier error page instead of the fairly detailed technical one.

Test Plan
  • Broke MySQL config.
  • Restarted Apache.
  • Got the "admin/setup" error page:

Screen Shot 2016-09-06 at 1.50.21 PM.png (1×1 px, 137 KB)

  • Fixed the MySQL config.
  • Loaded any page, to put us "in flight".
  • Broke MySQL config.
  • Loaded any page.
  • Got the friendly "in flight" error page:

Screen Shot 2016-09-06 at 1.48.05 PM.png (1×1 px, 68 KB)

If you want to design this better, easiest way to get to it is:

  • Set mysql.port to 9999 in conf/local/local.json.
  • Reload any page while already running (don't restart).

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable