Page MenuHomePhabricator

Correct some issues around IMPORTED_PERMANENT in RefEngine
ClosedPublic

Authored by epriestley on Jan 23 2021, 12:38 AM.
Tags
None
Referenced Files
F13165910: D21518.diff
Tue, May 7, 5:41 AM
Unknown Object (File)
Sat, May 4, 10:28 AM
Unknown Object (File)
Fri, May 3, 3:27 AM
Unknown Object (File)
Mon, Apr 29, 3:41 PM
Unknown Object (File)
Fri, Apr 26, 9:34 PM
Unknown Object (File)
Wed, Apr 24, 10:52 PM
Unknown Object (File)
Mon, Apr 22, 7:52 PM
Unknown Object (File)
Sat, Apr 20, 5:31 PM
Subscribers
None

Details

Summary

Ref T13591. Fixes a few issues with the recent updates here discovered in more thorough testing.

Test Plan
  • Stopped the daemons.
  • Created a new copy of Phabricator in Diffusion.
  • Pulled it with bin/repository pull ....
    • Got 17,278 commits on disk with git log --all --format=%H.
  • Set permanent refs to "master".
  • Discovered it with bin/repository discover ....
    • This took 31.5s and inserted 17,278 tasks.
    • Verified that all tasks have priority 4,000 (PRIORITY_IMPORT).
    • Observed that 16,799 commits have IMPORTED_PERMANENT and 479 commits do not.
      • This matches git log master --format=%H exactly.
  • Ran bin/repository refs .... Expected no changes and saw no changes.
  • Ran bin/worker execute --active for a minute or two. It processed all the impermanent changes first (since bin/worker is LIFO and these are supposed to process last).
    • Ran bin/repository refs. Expected no changes and saw no changes.
    • Marked all refs as permanent.
    • Starting state: 16,009 message tasks, all at priority 4000.
    • Ran bin/repository refs, expecting 479 new tasks at priority 4000.
    • Saw count rise to 16,488 as expected.
    • Saw all the new tasks have priority 4000 and all commits now have the IMPORTED_PERMANENT flag.

Diff Detail

Repository
rP Phabricator
Branch
repair6
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 25023
Build 34528: Run Core Tests
Build 34527: arc lint + arc unit