HomePhabricator

revlogv2: introduce a very basic docket file

Authored by marmoute.

Description

revlogv2: introduce a very basic docket file

This is the first stone toward using a docket file in revlogv2. Right now the
docket is very basic and only store the version number (which is -also- stored
into the index file…) and the other files have fixed name. This new
implementation break transactionally… but they are no test checking
transactionally for revlogv2… So I take this as an opportunity to start small.
They are no usage of revlogv2 outside of tests anyway.

The docket keeps the .i naming used by previous version index to preserve a
unique entry point. We could decide to use a different name and look it up
first, or to fully rework this in a future "store" version. However that does
not seems necessary right now.

We will re-introduces transactionality (and associated testing…) in a later
changesets.

A long list of TODOs have been added to the relevant comment.

Differential Revision: https://phab.mercurial-scm.org/D10624

Details

Committed
marmouteMay 3 2021, 6:34 AM
Differential Revision
D10624: revlogv2: introduce a very basic docket file
Parents
rHGbcafcd779d2e: branching: merge stable into default
Branches
Unknown
Tags
Unknown