Page MenuHomePhabricator

Improve performance of "phabricator:20210215.changeset.02.phid-populate.php"
ClosedPublic

Authored by epriestley on Feb 19 2021, 3:48 PM.
Tags
None
Referenced Files
F19083438: D21570.id51344.diff
Dec 2 2025, 12:35 PM
F19056474: D21570.id51344.diff
Nov 28 2025, 7:48 PM
F19040823: D21570.diff
Nov 26 2025, 1:42 PM
F19034388: D21570.diff
Nov 25 2025, 2:12 PM
F18993616: D21570.id51343.diff
Nov 19 2025, 8:12 AM
F18810417: D21570.id51343.diff
Oct 19 2025, 9:24 PM
F18807648: D21570.diff
Oct 19 2025, 2:42 AM
F18804636: D21570.id.diff
Oct 18 2025, 10:20 AM
Subscribers
Restricted Owners Package

Details

Summary

Ref T13613. Improve the performance of this migration by using a temporary table and an "UPDATE x JOIN y ..." pattern.

Test Plan
  • Ran on secure, got exit after a few seconds since the migration is idempotent and changesets already had PHIDs.
  • Ran on secure with the continue; commented out, got valid new PHIDs in 53s (from 153s).
  • Tried a larger page size (16K), didn't see any improvement.
  • From "--trace", client PHID generation seems to be the limiting factor.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Owners added a subscriber: Restricted Owners Package.Feb 19 2021, 3:48 PM

From "--trace", client PHID generation seems to be the limiting factor.

I think this isn't quite true. On secure, generating 400K PHIDs in a standalone script takes 7s, so this isn't totally trivial but is only ~13% of remaining runtime. I don't see any obvious wins remaining here, though.

This revision was not accepted when it landed; it landed in state Needs Review.Feb 19 2021, 3:53 PM
This revision was automatically updated to reflect the committed changes.