Page MenuHomePhabricator

Don't issue a bazillion queries to load Differential object lists
ClosedPublic

Authored by epriestley on Feb 19 2014, 1:35 AM.
Tags
None
Referenced Files
F15412578: D8277.diff
Wed, Mar 19, 1:46 PM
F15410888: D8277.diff
Wed, Mar 19, 8:38 AM
F15410199: D8277.diff
Wed, Mar 19, 6:53 AM
F15399523: D8277.id19696.diff
Mon, Mar 17, 5:00 AM
F15390215: D8277.id19696.diff
Sat, Mar 15, 6:01 AM
Unknown Object (File)
Fri, Feb 28, 1:16 AM
Unknown Object (File)
Feb 3 2025, 9:25 PM
Unknown Object (File)
Feb 3 2025, 8:00 PM
Subscribers
Tokens
"Mountain of Wealth" token, awarded by chad."Mountain of Wealth" token, awarded by btrahan.

Details

Reviewers
btrahan
Maniphest Tasks
Restricted Maniphest Task
Commits
Restricted Diffusion Commit
rP50ed42761ce9: Don't issue a bazillion queries to load Differential object lists
Summary

Ref T3496. Currently, we call loadAssets() on each revision table, which invokes a new revision query and a pile of subqueries.

Instead, add needFlags() and needDrafts() to RevisionQuery. Some day these could perhaps be more generic.

Test Plan
  • Viewed home, differential, etc., no longer saw 9203809238 queries being run for no reason.
  • Drafts and flags still appear properly.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

awesometown

divided by

9203809238

equals

awesometown

well okay 9203809238 is more like 9 or something but that's still more than 0!!~