tests/test-sparse-revlog.t
author Manuel Jacob <me@manueljacob.de>
Thu, 15 Sep 2022 01:48:38 +0200
changeset 49494 c96ed4029fda
parent 49353 fa8d974284f8
child 49589 266bb5c86f4b
permissions -rw-r--r--
templates: add filter to reverse list The filter supports only lists because for lists, it’s straightforward to implement. Reversing text doesn’t seem very useful and is hard to implement. Reversing the bytes would break multi-bytes encodings. Reversing the code points would break characters consisting of multiple code points. Reversing graphemes is non-trivial without using a library not included in the standard library.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     1
====================================
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     2
Test delta choice with sparse revlog
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     3
====================================
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     4
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     5
Sparse-revlog usually shows the most gain on Manifest. However, it is simpler
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     6
to general an appropriate file, so we test with a single file instead. The
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     7
goal is to observe intermediate snapshot being created.
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     8
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
     9
We need a large enough file. Part of the content needs to be replaced
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    10
repeatedly while some of it changes rarely.
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    11
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    12
  $ bundlepath="$TESTDIR/artifacts/cache/big-file-churn.hg"
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    13
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    14
  $ expectedhash=`cat "$bundlepath".md5`
41805
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    15
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    16
#if slow
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    17
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    18
  $ if [ ! -f "$bundlepath" ]; then
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    19
  >     "$TESTDIR"/artifacts/scripts/generate-churning-bundle.py > /dev/null
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    20
  > fi
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    21
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    22
#else
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    23
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    24
  $ if [ ! -f "$bundlepath" ]; then
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    25
  >     echo 'skipped: missing artifact, run "'"$TESTDIR"'/artifacts/scripts/generate-churning-bundle.py"'
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    26
  >     exit 80
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    27
  > fi
41805
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    28
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    29
#endif
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41794
diff changeset
    30
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    31
  $ currenthash=`f -M "$bundlepath" | cut -d = -f 2`
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    32
  $ if [ "$currenthash" != "$expectedhash" ]; then
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    33
  >     echo 'skipped: outdated artifact, md5 "'"$currenthash"'" expected "'"$expectedhash"'" run "'"$TESTDIR"'/artifacts/scripts/generate-churning-bundle.py"'
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    34
  >     exit 80
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    35
  > fi
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    36
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    37
  $ cat >> $HGRCPATH << EOF
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    38
  > [format]
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    39
  > sparse-revlog = yes
39506
b66ea3fc3a86 sparse-revlog: set max delta chain length to on thousand
Boris Feld <boris.feld@octobus.net>
parents: 39505
diff changeset
    40
  > maxchainlen = 15
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    41
  > [storage]
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    42
  > revlog.optimize-delta-parent-choice = yes
41819
688fc33e105d storage: introduce a `revlog.reuse-external-delta` config
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41818
diff changeset
    43
  > revlog.reuse-external-delta = no
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    44
  > EOF
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    45
  $ hg init sparse-repo
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    46
  $ cd sparse-repo
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    47
  $ hg unbundle $bundlepath
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    48
  adding changesets
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    49
  adding manifests
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    50
  adding file changes
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    51
  added 5001 changesets with 5001 changes to 1 files (+89 heads)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    52
  new changesets 9706f5af64f4:d9032adc8114 (5001 drafts)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    53
  (run 'hg heads' to see heads, 'hg merge' to merge)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    54
  $ hg up
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    55
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    56
  updated to "d9032adc8114: commit #5000"
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    57
  89 other heads for branch "default"
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    58
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    59
  $ hg log --stat -r 0:3
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    60
  changeset:   0:9706f5af64f4
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    61
  user:        test
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    62
  date:        Thu Jan 01 00:00:00 1970 +0000
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    63
  summary:     initial commit
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    64
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    65
   SPARSE-REVLOG-TEST-FILE |  10500 ++++++++++++++++++++++++++++++++++++++++++++++
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    66
   1 files changed, 10500 insertions(+), 0 deletions(-)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    67
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    68
  changeset:   1:724907deaa5e
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    69
  user:        test
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    70
  date:        Thu Jan 01 00:00:00 1970 +0000
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    71
  summary:     commit #1
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    72
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    73
   SPARSE-REVLOG-TEST-FILE |  1068 +++++++++++++++++++++++-----------------------
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    74
   1 files changed, 534 insertions(+), 534 deletions(-)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    75
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    76
  changeset:   2:62c41bce3e5d
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    77
  user:        test
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    78
  date:        Thu Jan 01 00:00:00 1970 +0000
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    79
  summary:     commit #2
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    80
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    81
   SPARSE-REVLOG-TEST-FILE |  1068 +++++++++++++++++++++++-----------------------
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    82
   1 files changed, 534 insertions(+), 534 deletions(-)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    83
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    84
  changeset:   3:348a9cbd6959
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    85
  user:        test
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    86
  date:        Thu Jan 01 00:00:00 1970 +0000
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    87
  summary:     commit #3
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    88
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    89
   SPARSE-REVLOG-TEST-FILE |  1068 +++++++++++++++++++++++-----------------------
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    90
   1 files changed, 534 insertions(+), 534 deletions(-)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    91
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    92
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    93
  $ f -s .hg/store/data/*.d
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
    94
  .hg/store/data/_s_p_a_r_s_e-_r_e_v_l_o_g-_t_e_s_t-_f_i_l_e.d: size=58616973
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    95
  $ hg debugrevlog *
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    96
  format : 1
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    97
  flags  : generaldelta
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    98
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
    99
  revisions     :     5001
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   100
      merges    :      625 (12.50%)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   101
      normal    :     4376 (87.50%)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   102
  revisions     :     5001
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   103
      empty     :        0 ( 0.00%)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   104
                     text  :        0 (100.00%)
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   105
                     delta :        0 (100.00%)
41794
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41793
diff changeset
   106
      snapshot  :      383 ( 7.66%)
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41793
diff changeset
   107
        lvl-0   :              3 ( 0.06%)
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   108
        lvl-1   :             18 ( 0.36%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   109
        lvl-2   :             62 ( 1.24%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   110
        lvl-3   :            108 ( 2.16%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   111
        lvl-4   :            191 ( 3.82%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   112
        lvl-5   :              1 ( 0.02%)
41794
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41793
diff changeset
   113
      deltas    :     4618 (92.34%)
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   114
  revision size : 58616973
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   115
      snapshot  :  9247844 (15.78%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   116
        lvl-0   :         539532 ( 0.92%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   117
        lvl-1   :        1467743 ( 2.50%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   118
        lvl-2   :        1873820 ( 3.20%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   119
        lvl-3   :        2326874 ( 3.97%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   120
        lvl-4   :        3029118 ( 5.17%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   121
        lvl-5   :          10757 ( 0.02%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   122
      deltas    : 49369129 (84.22%)
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   123
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   124
  chunks        :     5001
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   125
      0x28      :     5001 (100.00%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   126
  chunks size   : 58616973
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   127
      0x28      : 58616973 (100.00%)
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   128
  
39506
b66ea3fc3a86 sparse-revlog: set max delta chain length to on thousand
Boris Feld <boris.feld@octobus.net>
parents: 39505
diff changeset
   129
  avg chain length  :        9
b66ea3fc3a86 sparse-revlog: set max delta chain length to on thousand
Boris Feld <boris.feld@octobus.net>
parents: 39505
diff changeset
   130
  max chain length  :       15
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   131
  max chain reach   : 27366701
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   132
  compression ratio :       29
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   133
  
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   134
  uncompressed data size (min/max/avg) : 346468 / 346472 / 346471
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   135
  full revision size (min/max/avg)     : 179288 / 180786 / 179844
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   136
  inter-snapshot size (min/max/avg)    : 10757 / 169507 / 22916
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   137
      level-1   (min/max/avg)          : 13905 / 169507 / 81541
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   138
      level-2   (min/max/avg)          : 10887 / 83873 / 30222
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   139
      level-3   (min/max/avg)          : 10911 / 43047 / 21545
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   140
      level-4   (min/max/avg)          : 10838 / 21390 / 15859
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   141
      level-5   (min/max/avg)          : 10757 / 10757 / 10757
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   142
  delta size (min/max/avg)             : 9672 / 108072 / 10690
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   143
  
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   144
  deltas against prev  : 3906 (84.58%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   145
      where prev = p1  : 3906     (100.00%)
39491
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
   146
      where prev = p2  :    0     ( 0.00%)
41793
2e92624c3613 test: update test-sparse-revlog.t output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39506
diff changeset
   147
      other            :    0     ( 0.00%)
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   148
  deltas against p1    :  649 (14.05%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   149
  deltas against p2    :   63 ( 1.36%)
41794
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41793
diff changeset
   150
  deltas against other :    0 ( 0.00%)
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   151
49228
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   152
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   153
Test `debug-delta-find`
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   154
-----------------------
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   155
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   156
  $ ls -1
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   157
  SPARSE-REVLOG-TEST-FILE
49353
fa8d974284f8 test: fix test-sparse-revlog output after debugdeltachain change
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49228
diff changeset
   158
  $ hg debugdeltachain SPARSE-REVLOG-TEST-FILE | grep snap | tail -1
fa8d974284f8 test: fix test-sparse-revlog output after debugdeltachain change
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49228
diff changeset
   159
     4971    4970      -1       3        5     4930    snap      19179     346472     427596   1.23414  15994877  15567281   36.40652     427596     179288   1.00000        5
49228
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   160
  $ hg debug-delta-find SPARSE-REVLOG-TEST-FILE 4971
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   161
  DBG-DELTAS-SEARCH: SEARCH rev=4971
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   162
  DBG-DELTAS-SEARCH: ROUND #1 - 2 candidates - search-down
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   163
  DBG-DELTAS-SEARCH:   CANDIDATE: rev=4962
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   164
  DBG-DELTAS-SEARCH:     type=snapshot-4
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   165
  DBG-DELTAS-SEARCH:     size=18296
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   166
  DBG-DELTAS-SEARCH:     base=4930
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   167
  DBG-DELTAS-SEARCH:     uncompressed-delta-size=30377
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   168
  DBG-DELTAS-SEARCH:     delta-search-time=* (glob)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   169
  DBG-DELTAS-SEARCH:     DELTA: length=16872 (BAD)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   170
  DBG-DELTAS-SEARCH:   CANDIDATE: rev=4971
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   171
  DBG-DELTAS-SEARCH:     type=snapshot-4
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   172
  DBG-DELTAS-SEARCH:     size=19179
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   173
  DBG-DELTAS-SEARCH:     base=4930
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   174
  DBG-DELTAS-SEARCH:     TOO-HIGH
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   175
  DBG-DELTAS-SEARCH: ROUND #2 - 1 candidates - search-down
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   176
  DBG-DELTAS-SEARCH:   CANDIDATE: rev=4930
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   177
  DBG-DELTAS-SEARCH:     type=snapshot-3
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   178
  DBG-DELTAS-SEARCH:     size=39228
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   179
  DBG-DELTAS-SEARCH:     base=4799
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   180
  DBG-DELTAS-SEARCH:     uncompressed-delta-size=33050
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   181
  DBG-DELTAS-SEARCH:     delta-search-time=* (glob)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   182
  DBG-DELTAS-SEARCH:     DELTA: length=19179 (GOOD)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   183
  DBG-DELTAS-SEARCH: ROUND #3 - 1 candidates - refine-down
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   184
  DBG-DELTAS-SEARCH:   CONTENDER: rev=4930 - length=19179
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   185
  DBG-DELTAS-SEARCH:   CANDIDATE: rev=4799
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   186
  DBG-DELTAS-SEARCH:     type=snapshot-2
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   187
  DBG-DELTAS-SEARCH:     size=50213
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   188
  DBG-DELTAS-SEARCH:     base=4623
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   189
  DBG-DELTAS-SEARCH:     uncompressed-delta-size=82661
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   190
  DBG-DELTAS-SEARCH:     delta-search-time=* (glob)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   191
  DBG-DELTAS-SEARCH:     DELTA: length=49132 (BAD)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   192
  DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4971: search-rounds=3 try-count=3 - delta-type=snapshot snap-depth=4 - p1-chain-length=15 p2-chain-length=-1 - duration=* (glob)
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49225
diff changeset
   193
49225
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41819
diff changeset
   194
  $ cd ..