Page MenuHomePhabricator

revlog: add a way to keep track of older uids in the docket
ClosedPublic

Authored by marmoute on Jun 11 2021, 6:55 AM.

Details

Summary

When the revlog content is rewritten, we will use new files, to avoid truncating
the previous ones. We need some way to keep track of the older files before we
clean them up.

Diff Detail

Repository
rHG Mercurial
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

marmoute created this revision.Jun 11 2021, 6:55 AM
baymax updated this revision to Diff 28566.Jun 15 2021, 7:39 AM

✅ refresh by Heptapod after a successful CI run (🐙 💚)

Alphare accepted this revision.Jun 16 2021, 10:56 AM
Alphare added a subscriber: Alphare.
Alphare added inline comments.
mercurial/revlogutils/docket.py
146

Aren't those asserts kind of overkill? I don't mind keeping this, but I'm wondering if there is a better chance of this happening than I imagine

This revision is now accepted and ready to land.Jun 16 2021, 10:56 AM
marmoute added inline comments.Jun 18 2021, 6:17 AM
mercurial/revlogutils/docket.py
146

They are no reason for them to arrive except when the serialization/deserialization code is wrong. In that case, it is nice to have a clear error about the issue. We could drop them, but they are cheap and might help while developing future patch.

marmoute updated this revision to Diff 28613.Jun 20 2021, 5:22 PM