annotate tests/test-sparse-revlog.t @ 49249:b909dd35d9ab

deltas: add a debug-delta-find command to analyse delta search See command documentation for details. For some reason, pytype is confused by our usage of None/deltainfo variable, so I had to quiet it.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Fri, 20 May 2022 14:27:46 +0200
parents 58a814d062ca
children fa8d974284f8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
39508
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`
41810
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41325
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: 41325
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: 41325
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: 41325
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: 41325
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: 41325
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: 41325
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: 41325
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: 41325
diff changeset
23
39508
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
41810
090a41251f09 test: generate the `test-sparse-revlog` artifact when slow-test is allowed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41325
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: 41325
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: 41325
diff changeset
30
39508
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
39523
b66ea3fc3a86 sparse-revlog: set max delta chain length to on thousand
Boris Feld <boris.feld@octobus.net>
parents: 39522
diff changeset
40 > maxchainlen = 15
39508
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
41824
688fc33e105d storage: introduce a `revlog.reuse-external-delta` config
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41823
diff changeset
43 > revlog.reuse-external-delta = no
39508
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
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
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
39508
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%)
41325
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41324
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: 41324
diff changeset
107 lvl-0 : 3 ( 0.06%)
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
108 lvl-1 : 18 ( 0.36%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
109 lvl-2 : 62 ( 1.24%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
110 lvl-3 : 108 ( 2.16%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
111 lvl-4 : 191 ( 3.82%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
112 lvl-5 : 1 ( 0.02%)
41325
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41324
diff changeset
113 deltas : 4618 (92.34%)
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
114 revision size : 58616973
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
115 snapshot : 9247844 (15.78%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
116 lvl-0 : 539532 ( 0.92%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
117 lvl-1 : 1467743 ( 2.50%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
118 lvl-2 : 1873820 ( 3.20%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
119 lvl-3 : 2326874 ( 3.97%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
120 lvl-4 : 3029118 ( 5.17%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
121 lvl-5 : 10757 ( 0.02%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
122 deltas : 49369129 (84.22%)
39508
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
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
125 0x28 : 5001 (100.00%)
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
126 chunks size : 58616973
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
127 0x28 : 58616973 (100.00%)
39508
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
128
39523
b66ea3fc3a86 sparse-revlog: set max delta chain length to on thousand
Boris Feld <boris.feld@octobus.net>
parents: 39522
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: 39522
diff changeset
130 max chain length : 15
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
131 max chain reach : 27366701
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
132 compression ratio : 29
39508
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
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
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: 41824
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: 41824
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: 41824
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: 41824
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: 41824
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: 41824
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: 41824
diff changeset
142 delta size (min/max/avg) : 9672 / 108072 / 10690
39508
4ca7a67c94c8 sparse-revlog: add a test checking revlog deltas for a churning file
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
143
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
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: 41824
diff changeset
145 where prev = p1 : 3906 (100.00%)
39508
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%)
41324
2e92624c3613 test: update test-sparse-revlog.t output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39523
diff changeset
147 other : 0 ( 0.00%)
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
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: 41824
diff changeset
149 deltas against p2 : 63 ( 1.36%)
41325
c59987ab96b4 test: don't trust delta bases from the bundle in test-sparse-revlog.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41324
diff changeset
150 deltas against other : 0 ( 0.00%)
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
151
49249
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
diff changeset
152
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
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: 49246
diff changeset
154 -----------------------
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
diff changeset
155
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
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: 49246
diff changeset
157 SPARSE-REVLOG-TEST-FILE
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
diff changeset
158 $ hg debugdeltachain SPARSE-REVLOG-TEST-FILE | grep other | tail -1
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
diff changeset
159 4971 3 5 4930 other 19179 346472 427596 1.23414 15994877 15567281 36.40652 427596 179288 1.00000 5
b909dd35d9ab deltas: add a debug-delta-find command to analyse delta search
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
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: 49246
diff changeset
193
49246
58a814d062ca test: update `test-sparse-revlog` output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41824
diff changeset
194 $ cd ..