##// END OF EJS Templates
test-sparse-revlog: commit the repo content in a single in-mem transaction...
test-sparse-revlog: commit the repo content in a single in-mem transaction I don't like to use the internal API like that, but it make the whole generation twice faster on my machine and suitable for always run during tests. However it also mean the `--pure` version of the test will run this with the pure source code and be unbearably slow. However if another flavor generated the file, pure will be able to simply reuse it, so it seems fine.

File last commit:

r53335:9feb175c default
r53336:83f87912 default
Show More
test-sparse-revlog.t
520 lines | 19.1 KiB | text/troff | Tads3Lexer
/ tests / test-sparse-revlog.t
====================================
Test delta choice with sparse revlog
====================================
Sparse-revlog usually shows the most gain on Manifest. However, it is simpler
to general an appropriate file, so we test with a single file instead. The
goal is to observe intermediate snapshot being created.
We need a large enough file. Part of the content needs to be replaced
repeatedly while some of it changes rarely.
$ bundlepath="$TESTDIR/artifacts/cache/big-file-churn.hg"
$ expectedhash=`cat "$bundlepath".md5`
#if slow
$ if [ ! -f "$bundlepath" ]; then
> "$TESTDIR"/artifacts/scripts/generate-churning-bundle.py > /dev/null
> fi
#else
$ if [ ! -f "$bundlepath" ]; then
> echo 'skipped: missing artifact, run "'"$TESTDIR"'/artifacts/scripts/generate-churning-bundle.py"'
> exit 80
> fi
#endif
$ currenthash=`f -M "$bundlepath" | cut -d = -f 2`
$ if [ "$currenthash" != "$expectedhash" ]; then
> echo 'skipped: outdated artifact, md5 "'"$currenthash"'" expected "'"$expectedhash"'" run "'"$TESTDIR"'/artifacts/scripts/generate-churning-bundle.py"'
> exit 80
> fi
$ cat >> $HGRCPATH << EOF
> [format]
> sparse-revlog = yes
> maxchainlen = 15
> revlog-compression=zlib
> [storage]
> revlog.optimize-delta-parent-choice = yes
> revlog.reuse-external-delta-parent = no
> revlog.reuse-external-delta = no
> EOF
$ hg init sparse-repo
$ cd sparse-repo
$ hg unbundle $bundlepath
adding changesets
adding manifests
adding file changes
added 5001 changesets with 5001 changes to 1 files (+89 heads)
new changesets 9706f5af64f4:e4eee5e41c37 (5001 drafts)
(run 'hg heads' to see heads, 'hg merge' to merge)
$ hg up
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updated to "e4eee5e41c37: commit #5000"
89 other heads for branch "default"
Sanity check the graph shape
$ hg log -T '{rev} {p1rev} {p2rev}\n' --rev '0:100'
0 -1 -1
1 0 -1
2 1 -1
3 2 -1
4 3 -1
5 4 -1
6 5 -1
7 1 -1
8 7 6
9 8 -1
10 9 -1
11 10 -1
12 11 -1
13 12 -1
14 1 -1
15 14 -1
16 15 13
17 16 -1
18 17 -1
19 18 -1
20 19 -1
21 16 -1
22 21 -1
23 22 -1
24 23 20
25 24 -1
26 25 -1
27 26 -1
28 21 -1
29 28 -1
30 29 -1
31 30 -1
32 31 27
33 32 -1
34 33 -1
35 31 -1
36 35 -1
37 36 -1
38 37 -1
39 38 -1
40 39 34
41 40 -1
42 36 -1
43 42 -1
44 43 -1
45 44 -1
46 45 -1
47 46 -1
48 47 41
49 36 -1
50 49 -1
51 50 -1
52 51 -1
53 52 -1
54 53 -1
55 54 -1
56 51 48
57 56 -1
58 57 -1
59 58 -1
60 59 -1
61 60 -1
62 61 -1
63 56 -1
64 63 55
65 64 -1
66 65 -1
67 66 -1
68 67 -1
69 68 -1
70 66 -1
71 70 -1
72 71 62
73 72 -1
74 73 -1
75 74 -1
76 75 -1
77 71 -1
78 77 -1
79 78 -1
80 79 69
81 80 -1
82 81 -1
83 82 -1
84 71 -1
85 84 -1
86 85 -1
87 86 -1
88 87 76
89 88 -1
90 89 -1
91 86 -1
92 91 -1
93 92 -1
94 93 -1
95 94 -1
96 95 83
97 96 -1
98 91 -1
99 98 -1
100 99 -1
sanity check the change pattern
$ hg log --stat -r 0:3
changeset: 0:9706f5af64f4
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: initial commit
SPARSE-REVLOG-TEST-FILE | 10500 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 10500 insertions(+), 0 deletions(-)
changeset: 1:724907deaa5e
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: commit #1
SPARSE-REVLOG-TEST-FILE | 1068 +++++++++++++++++++++++-----------------------
1 files changed, 534 insertions(+), 534 deletions(-)
changeset: 2:62c41bce3e5d
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: commit #2
SPARSE-REVLOG-TEST-FILE | 1068 +++++++++++++++++++++++-----------------------
1 files changed, 534 insertions(+), 534 deletions(-)
changeset: 3:348a9cbd6959
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: commit #3
SPARSE-REVLOG-TEST-FILE | 1068 +++++++++++++++++++++++-----------------------
1 files changed, 534 insertions(+), 534 deletions(-)
$ f -s .hg/store/data/*.d
.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=81370673
$ hg debugrevlog *
format : 1
flags : generaldelta
revisions : 5001
merges : 625 (12.50%)
normal : 4376 (87.50%)
revisions : 5001
empty : 0 ( 0.00%)
text : 0 (100.00%)
delta : 0 (100.00%)
snapshot : 360 ( 7.20%)
lvl-0 : 11 ( 0.22%)
lvl-1 : 50 ( 1.00%) non-ancestor-bases: 41 (82.00%)
lvl-2 : 128 ( 2.56%) non-ancestor-bases: 119 (92.97%)
lvl-3 : 122 ( 2.44%) non-ancestor-bases: 111 (90.98%)
lvl-4 : 49 ( 0.98%) non-ancestor-bases: 46 (93.88%)
deltas : 4641 (92.80%)
revision size : 81370673
snapshot : 16282100 (20.01%)
lvl-0 : 2188012 ( 2.69%)
lvl-1 : 4848143 ( 5.96%)
lvl-2 : 5366175 ( 6.59%)
lvl-3 : 3085157 ( 3.79%)
lvl-4 : 794613 ( 0.98%)
deltas : 65088573 (79.99%)
chunks : 5001
0x78 (x) : 5001 (100.00%)
chunks size : 81370673
0x78 (x) : 81370673 (100.00%)
total-stored-content: 1 717 863 086 bytes
avg chain length : 8
max chain length : 15
max chain reach : 18326506
compression ratio : 21
uncompressed data size (min/max/avg) : 339930 / 346471 / 343503
full revision size (min/max/avg) : 196682 / 201129 / 198910
inter-snapshot size (min/max/avg) : 11620 / 172223 / 40384
level-1 (min/max/avg) : 14329 / 172223 / 96962
level-2 (min/max/avg) : 11664 / 86421 / 41923
level-3 (min/max/avg) : 11620 / 42674 / 25288
level-4 (min/max/avg) : 11631 / 21209 / 16216
delta size (min/max/avg) : 10610 / 190651 / 14024
deltas against prev : 3916 (84.38%)
where prev = p1 : 3916 (100.00%)
where prev = p2 : 0 ( 0.00%)
other-ancestor : 0 ( 0.00%)
unrelated : 0 ( 0.00%)
deltas against p1 : 667 (14.37%)
deltas against p2 : 58 ( 1.25%)
deltas against ancs : 0 ( 0.00%)
deltas against other : 0 ( 0.00%)
Test `debug-delta-find`
-----------------------
$ ls -1
SPARSE-REVLOG-TEST-FILE
$ hg debugdeltachain SPARSE-REVLOG-TEST-FILE | grep snap | tail -1
4996 4995 -1 11 3 4947 snap
$ LAST_SNAP=`hg debugdeltachain SPARSE-REVLOG-TEST-FILE | grep snap | tail -1| sed 's/^ \+//'| cut -d ' ' -f 1`
$ echo Last Snapshot: $LAST_SNAP
Last Snapshot: 4996
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP
DBG-DELTAS-SEARCH: SEARCH rev=4996
DBG-DELTAS-SEARCH: ROUND #1 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4964
DBG-DELTAS-SEARCH: type=snapshot-3
DBG-DELTAS-SEARCH: size=15153
DBG-DELTAS-SEARCH: base=4958
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36297 (BAD)
DBG-DELTAS-SEARCH: ROUND #2 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4958
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=30977
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36578 (BAD)
DBG-DELTAS-SEARCH: ROUND #3 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4947
DBG-DELTAS-SEARCH: type=snapshot-1
DBG-DELTAS-SEARCH: size=164878
DBG-DELTAS-SEARCH: base=4667
DBG-DELTAS-SEARCH: uncompressed-delta-size=87938
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=52101 (GOOD)
DBG-DELTAS-SEARCH: ROUND #4 - 1 candidates - refine-down
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4667
DBG-DELTAS-SEARCH: type=snapshot-0
DBG-DELTAS-SEARCH: size=196699
DBG-DELTAS-SEARCH: base=-1
DBG-DELTAS-SEARCH: uncompressed-delta-size=281309
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=165408 (GOOD)
DBG-DELTAS-SEARCH: ROUND #5 - 1 candidates - refine-up
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4954
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=58198
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=92195
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=54601 (BAD)
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=0 - search-rounds=5 try-count=5 - delta-type=snapshot snap-depth=2 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ cat << EOF >>.hg/hgrc
> [storage]
> revlog.optimize-delta-parent-choice = no
> revlog.reuse-external-delta = yes
> EOF
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP --quiet
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=0 - search-rounds=5 try-count=5 - delta-type=snapshot snap-depth=2 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP --source full
DBG-DELTAS-SEARCH: SEARCH rev=4996
DBG-DELTAS-SEARCH: ROUND #1 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4964
DBG-DELTAS-SEARCH: type=snapshot-3
DBG-DELTAS-SEARCH: size=15153
DBG-DELTAS-SEARCH: base=4958
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36297 (BAD)
DBG-DELTAS-SEARCH: ROUND #2 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4958
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=30977
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36578 (BAD)
DBG-DELTAS-SEARCH: ROUND #3 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4947
DBG-DELTAS-SEARCH: type=snapshot-1
DBG-DELTAS-SEARCH: size=164878
DBG-DELTAS-SEARCH: base=4667
DBG-DELTAS-SEARCH: uncompressed-delta-size=87938
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=52101 (GOOD)
DBG-DELTAS-SEARCH: ROUND #4 - 1 candidates - refine-down
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4667
DBG-DELTAS-SEARCH: type=snapshot-0
DBG-DELTAS-SEARCH: size=196699
DBG-DELTAS-SEARCH: base=-1
DBG-DELTAS-SEARCH: uncompressed-delta-size=281309
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=165408 (GOOD)
DBG-DELTAS-SEARCH: ROUND #5 - 1 candidates - refine-up
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4954
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=58198
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=92195
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=54601 (BAD)
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=0 - search-rounds=5 try-count=5 - delta-type=snapshot snap-depth=2 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP --source storage
DBG-DELTAS-SEARCH: SEARCH rev=4996
DBG-DELTAS-SEARCH: ROUND #1 - 1 candidates - cached-delta
DBG-DELTAS-SEARCH: CANDIDATE: rev=4947
DBG-DELTAS-SEARCH: type=snapshot-1
DBG-DELTAS-SEARCH: size=164878
DBG-DELTAS-SEARCH: base=4667
DBG-DELTAS-SEARCH: uncompressed-delta-size=87938
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=52101 (GOOD)
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=1 - search-rounds=1 try-count=1 - delta-type=delta snap-depth=-1 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP --source p1
DBG-DELTAS-SEARCH: SEARCH rev=4996
DBG-DELTAS-SEARCH: ROUND #1 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4964
DBG-DELTAS-SEARCH: type=snapshot-3
DBG-DELTAS-SEARCH: size=15153
DBG-DELTAS-SEARCH: base=4958
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36297 (BAD)
DBG-DELTAS-SEARCH: ROUND #2 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4958
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=30977
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36578 (BAD)
DBG-DELTAS-SEARCH: ROUND #3 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4947
DBG-DELTAS-SEARCH: type=snapshot-1
DBG-DELTAS-SEARCH: size=164878
DBG-DELTAS-SEARCH: base=4667
DBG-DELTAS-SEARCH: uncompressed-delta-size=87938
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=52101 (GOOD)
DBG-DELTAS-SEARCH: ROUND #4 - 1 candidates - refine-down
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4667
DBG-DELTAS-SEARCH: type=snapshot-0
DBG-DELTAS-SEARCH: size=196699
DBG-DELTAS-SEARCH: base=-1
DBG-DELTAS-SEARCH: uncompressed-delta-size=281309
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=165408 (GOOD)
DBG-DELTAS-SEARCH: ROUND #5 - 1 candidates - refine-up
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4954
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=58198
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=92195
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=54601 (BAD)
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=0 - search-rounds=5 try-count=5 - delta-type=snapshot snap-depth=2 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP --source p2
DBG-DELTAS-SEARCH: SEARCH rev=4996
DBG-DELTAS-SEARCH: ROUND #1 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4964
DBG-DELTAS-SEARCH: type=snapshot-3
DBG-DELTAS-SEARCH: size=15153
DBG-DELTAS-SEARCH: base=4958
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36297 (BAD)
DBG-DELTAS-SEARCH: ROUND #2 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4958
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=30977
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36578 (BAD)
DBG-DELTAS-SEARCH: ROUND #3 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4947
DBG-DELTAS-SEARCH: type=snapshot-1
DBG-DELTAS-SEARCH: size=164878
DBG-DELTAS-SEARCH: base=4667
DBG-DELTAS-SEARCH: uncompressed-delta-size=87938
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=52101 (GOOD)
DBG-DELTAS-SEARCH: ROUND #4 - 1 candidates - refine-down
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4667
DBG-DELTAS-SEARCH: type=snapshot-0
DBG-DELTAS-SEARCH: size=196699
DBG-DELTAS-SEARCH: base=-1
DBG-DELTAS-SEARCH: uncompressed-delta-size=281309
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=165408 (GOOD)
DBG-DELTAS-SEARCH: ROUND #5 - 1 candidates - refine-up
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4954
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=58198
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=92195
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=54601 (BAD)
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=0 - search-rounds=5 try-count=5 - delta-type=snapshot snap-depth=2 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ hg debug-delta-find SPARSE-REVLOG-TEST-FILE $LAST_SNAP --source prev
DBG-DELTAS-SEARCH: SEARCH rev=4996
DBG-DELTAS-SEARCH: ROUND #1 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4964
DBG-DELTAS-SEARCH: type=snapshot-3
DBG-DELTAS-SEARCH: size=15153
DBG-DELTAS-SEARCH: base=4958
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36297 (BAD)
DBG-DELTAS-SEARCH: ROUND #2 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4958
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=30977
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=61571
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=36578 (BAD)
DBG-DELTAS-SEARCH: ROUND #3 - 1 candidates - search-down
DBG-DELTAS-SEARCH: CANDIDATE: rev=4947
DBG-DELTAS-SEARCH: type=snapshot-1
DBG-DELTAS-SEARCH: size=164878
DBG-DELTAS-SEARCH: base=4667
DBG-DELTAS-SEARCH: uncompressed-delta-size=87938
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=52101 (GOOD)
DBG-DELTAS-SEARCH: ROUND #4 - 1 candidates - refine-down
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4667
DBG-DELTAS-SEARCH: type=snapshot-0
DBG-DELTAS-SEARCH: size=196699
DBG-DELTAS-SEARCH: base=-1
DBG-DELTAS-SEARCH: uncompressed-delta-size=281309
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=165408 (GOOD)
DBG-DELTAS-SEARCH: ROUND #5 - 1 candidates - refine-up
DBG-DELTAS-SEARCH: CONTENDER: rev=4947 - length=52101
DBG-DELTAS-SEARCH: CANDIDATE: rev=4954
DBG-DELTAS-SEARCH: type=snapshot-2
DBG-DELTAS-SEARCH: size=58198
DBG-DELTAS-SEARCH: base=4947
DBG-DELTAS-SEARCH: uncompressed-delta-size=92195
DBG-DELTAS-SEARCH: delta-search-time=* (glob)
DBG-DELTAS-SEARCH: DELTA: length=54601 (BAD)
DBG-DELTAS: FILELOG:SPARSE-REVLOG-TEST-FILE: rev=4996: delta-base=4947 is-cached=0 - search-rounds=5 try-count=5 - delta-type=snapshot snap-depth=2 - p1-chain-length=15 p2-chain-length=-1 - duration=*.?????? (glob)
$ cd ..