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
Unknown Object (File)
Wed, Mar 27, 8:18 PM
Unknown Object (File)
Wed, Mar 27, 8:18 PM
Unknown Object (File)
Wed, Mar 27, 8:18 PM
Unknown Object (File)
Wed, Mar 27, 8:18 PM
Unknown Object (File)
Tue, Mar 5, 6:47 AM
Unknown Object (File)
Feb 18 2024, 11:14 PM
Unknown Object (File)
Jan 9 2024, 5:09 PM
Unknown Object (File)
Dec 12 2023, 9:02 PM
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.