Page MenuHomePhabricator

When a page throws an exception and response construction throws another exception, throw an aggregate exception
ClosedPublic

Authored by epriestley on Aug 16 2019, 10:20 PM.
Tags
None
Referenced Files
F15581508: D20720.id.diff
Wed, May 7, 11:22 AM
F15556512: D20720.id49437.diff
Mon, Apr 28, 5:04 PM
F15549535: D20720.diff
Sun, Apr 27, 6:23 AM
F15530581: D20720.id49402.diff
Wed, Apr 23, 6:03 AM
F15515015: D20720.id.diff
Fri, Apr 18, 7:22 AM
F15513470: D20720.diff
Thu, Apr 17, 7:14 PM
F15512746: D20720.id49402.diff
Thu, Apr 17, 1:27 PM
F15478168: D20720.diff
Apr 7 2025, 8:56 PM
Subscribers
None

Details

Summary

Depends on D20719. Currently, if a page throws an exception (like a policy exception) and rendering that exception into a response (like a policy dialog) throws another exception (for example, while constructing breadcrumbs), we only show the orginal exception.

This is usually the more useful exception, but sometimes we actually care about the other exception.

Instead of guessing which one is more likely to be useful, throw them both as an "AggregateException" and let the high-level handler flatten it for display.

Test Plan

Screen Shot 2019-08-16 at 3.18.18 PM.png (1×1 px, 413 KB)

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable