Mercurial > hg
view tests/test-remotefilelog-keepset.t @ 47234:616b8f412676
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
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 03 May 2021 12:34:11 +0200 |
parents | 0800d9e6e216 |
children |
line wrap: on
line source
#require no-windows $ . "$TESTDIR/remotefilelog-library.sh" $ hg init master $ cd master $ cat >> .hg/hgrc <<EOF > [remotefilelog] > server=True > serverexpiration=-1 > EOF $ echo x > x $ hg commit -qAm x $ echo y > y $ hg commit -qAm y $ echo z > z $ hg commit -qAm z $ cd .. $ hgcloneshallow ssh://user@dummy/master shallow -q 3 files fetched over 1 fetches - (3 misses, 0.00% hit ratio) over *s (glob) # Compute keepset for 0th and 2nd commit, which implies that we do not process # the 1st commit, therefore we diff 2nd manifest with the 0th manifest and # populate the keepkeys from the diff $ cd shallow $ cat >> .hg/hgrc <<EOF > [remotefilelog] > pullprefetch=0+2 > EOF $ hg debugkeepset # Compute keepset for all commits, which implies that we only process deltas of # manifests of commits 1 and 2 and therefore populate the keepkeys from deltas $ cat >> .hg/hgrc <<EOF > [remotefilelog] > pullprefetch=all() > EOF $ hg debugkeepset