HomePhabricator

[dagit] Simplify repository reload logic

Description

[dagit] Simplify repository reload logic

Summary:
It turns out that when you have a query that uses no-cache, calling refetch won't update every every instance of that query. This was causing inconsistent behavior based on what screen you were on, and sometimes showing two error messages at the same time.

This diff simplifies the data fetching for repository locations to always pull data from the WorkspaceContext. The state observer logic has also been updated to call refetch on the root repository locations query. The only tradeoff here is that if you're in a location that has error-ed out, you will see an error screen immediately. The previous complexity was to provide an intermediary message before they head over to the repository-locations page to debug. It seems fine to error out because users can't do anything until the location is back up anyway, and their next immediate action is the same in either case.

Test Plan:

  • Press reload button on sidebar
  • Press reload button in instance page under repository locations
  • Check auto-reload works

Reviewers: dish

Reviewed By: dish

Differential Revision: https://dagster.phacility.com/D5639

Details

Provenance
sashankAuthored on Dec 16 2020, 8:32 AM
Reviewer
dish
Differential Revision
D5639: [dagit] Simplify repository reload logic
Parents
R1:c24edab9f6ab: Log error/interrupt events in the execute_run CLI call
Branches
Unknown
Tags
Unknown