Page MenuHomePhabricator

Add a specialized cache for storing "has setup ever worked?"
ClosedPublic

Authored by epriestley on Sep 12 2016, 2:36 PM.
Tags
None
Referenced Files
F15568022: D16542.diff
Fri, May 2, 7:10 PM
F15561110: D16542.id39807.diff
Tue, Apr 29, 6:09 PM
F15557955: D16542.diff
Tue, Apr 29, 12:09 AM
F15542376: D16542.id39807.diff
Fri, Apr 25, 4:38 PM
F15486777: D16542.id39806.diff
Thu, Apr 10, 9:36 AM
F15485816: D16542.diff
Thu, Apr 10, 2:45 AM
F15470967: D16542.id39807.diff
Apr 5 2025, 2:20 AM
F15463680: D16542.diff
Apr 2 2025, 2:09 AM
Subscribers
None

Details

Summary

Ref T11613. In D16503/T11598 I refined the setup flow to improve messaging for early-stage setup issues, but failed to fully untangle things.

We sometimes still try to access a cache which uses configuration before we build configuration, which causes an error.

Instead, store "are we in flight / has setup ever worked?" in a separate cache which doesn't use the cache namespace. This stops us from trying to read config before building config.

Test Plan

Hit bad extension error with a fake extension, got a proper setup help page:

Screen Shot 2016-09-12 at 7.30.45 AM.png (1×1 px, 137 KB)

Solved the error, reloaded, broke things again, got a "friendly" page:

Screen Shot 2016-09-12 at 7.31.19 AM.png (1×1 px, 66 KB)

Diff Detail

Repository
rP Phabricator
Branch
ecache1
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 13686
Build 17653: Run Core Tests
Build 17652: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Add a specialized cache for storing "has setup ever worked?".
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.
This revision is now accepted and ready to land.Sep 12 2016, 3:03 PM
src/infrastructure/env/PhabricatorEnv.php
326–332

(I moved these down to avoid an error on the call to array_key_exists() where $cache might not exist yet.)

This revision was automatically updated to reflect the committed changes.