tests/test-debug-rebuild-dirstate.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 26 Mar 2024 18:55:40 +0000
changeset 51547 8e2a68e10f5c
parent 51181 dcaa2df1f688
permissions -rw-r--r--
stream: in v3, skip the "size" fast path if the entries as some unknown size We are about to prefetch size during the lock less in the v3 case. So we need to avoid trying to use that prefetched size when it is not available. See next changeset for the motivation.

#require rust

  $ cat >> $HGRCPATH << EOF
  > [format]
  > use-dirstate-v2=1
  > [storage]
  > dirstate-v2.slow-path=allow
  > EOF

  $ hg init t
  $ cd t

  $ for i in 1 2 3 4 5 6 7 8 9 10; do touch foobar$i; done
  $ hg add .
  adding foobar1
  adding foobar10
  adding foobar2
  adding foobar3
  adding foobar4
  adding foobar5
  adding foobar6
  adding foobar7
  adding foobar8
  adding foobar9
  $ hg commit -m "1"

Check that there's no space leak on debugrebuilddirstate

  $ f --size .hg/dirstate*
  .hg/dirstate: size=133
  .hg/dirstate.88698448: size=511
  $ hg debugrebuilddirstate
  $ f --size .hg/dirstate*
  .hg/dirstate: size=133
  .hg/dirstate.6b8ab34b: size=511
  $ hg debugrebuilddirstate
  $ f --size .hg/dirstate*
  .hg/dirstate: size=133
  .hg/dirstate.b875dfc5: size=511