Page MenuHomePhabricator

Add an "Unreachable" flag for commits and revive them during discovery
ClosedPublic

Authored by epriestley on Jun 16 2016, 2:30 PM.
Tags
None
Referenced Files
F22076200: D16130.diff
Thu, Aug 20, 10:38 AM
Unknown Object (File)
Mon, Aug 17, 2:17 AM
Unknown Object (File)
Tue, Aug 11, 2:12 AM
Unknown Object (File)
Jun 26 2026, 4:32 PM
Unknown Object (File)
Jun 25 2026, 10:57 AM
Unknown Object (File)
Jun 25 2026, 9:47 AM
Unknown Object (File)
Jun 24 2026, 6:05 AM
Unknown Object (File)
Jun 23 2026, 3:13 PM
Subscribers
None

Details

Summary

Ref T9028. This is the easy part of dealing with deleted commits:

  • Add a flag for unreachable commits (nothing sets this flag yet).
  • Ignore unreachable commits when querying for known commits during discovery, so we pretend they do not exist.
  • When recording a commit, try just reviving an existing unreachable commit first. If that works, bail out.
Test Plan
  • Artificially marked a commit as unreachable with raw SQL.
  • Verified it said "deleted: unreachable" in the UI.
  • Ran repository discover --trace --verbose.
  • Saw the discovery process ignore the commit when filling the cache.
  • Saw the discovery process revive the commit instead of trying to record it again.
  • Web UI now shows the commit as normal.
  • Running repository discover again doesn't make any further changes.

Diff Detail

Repository
rP Phabricator
Branch
ref2
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 12682
Build 16124: Run Core Tests
Build 16123: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Add an "Unreachable" flag for commits and revive them during discovery.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.
This revision is now accepted and ready to land.Jun 16 2016, 2:31 PM
This revision was automatically updated to reflect the committed changes.