Mercurial > hg
comparison tests/test-sparse-revlog.t @ 39494:e72130f58f5d
snapshot: consider all snapshots in the parents' chains
There are no reasons to only consider full snapshot as a possible base for an
intermediate snapshot. Now that the basic principles have been set, we can
start adding more levels of snapshots.
We now consider all snapshots in the parent's chains (full or intermediate).
This creates a chain of intermediate snapshots, each smaller than the previous
one.
# Effect On The Test Repository
In the test repository, we can see a decrease in the revlog size and slightly
shorter delta chain.
However, that approach creates snapshots more frequently, increasing the risk
of ending into problematic cases in very branchy repositories (not triggered
by the test repository). The next changesets will remove that risk by adding
logic that increases deltas reuse.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Fri, 07 Sep 2018 11:17:30 -0400 |
parents | 3ca144f1c8dd |
children | 6a53842727c1 |
comparison
equal
deleted
inserted
replaced
39493:3ca144f1c8dd | 39494:e72130f58f5d |
---|---|
75 SPARSE-REVLOG-TEST-FILE | 1068 +++++++++++++++++++++++----------------------- | 75 SPARSE-REVLOG-TEST-FILE | 1068 +++++++++++++++++++++++----------------------- |
76 1 files changed, 534 insertions(+), 534 deletions(-) | 76 1 files changed, 534 insertions(+), 534 deletions(-) |
77 | 77 |
78 | 78 |
79 $ f -s .hg/store/data/*.d | 79 $ f -s .hg/store/data/*.d |
80 .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=67810463 | 80 .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=63812493 |
81 $ hg debugrevlog * | 81 $ hg debugrevlog * |
82 format : 1 | 82 format : 1 |
83 flags : generaldelta | 83 flags : generaldelta |
84 | 84 |
85 revisions : 5001 | 85 revisions : 5001 |
87 normal : 4376 (87.50%) | 87 normal : 4376 (87.50%) |
88 revisions : 5001 | 88 revisions : 5001 |
89 empty : 0 ( 0.00%) | 89 empty : 0 ( 0.00%) |
90 text : 0 (100.00%) | 90 text : 0 (100.00%) |
91 delta : 0 (100.00%) | 91 delta : 0 (100.00%) |
92 snapshot : 126 ( 2.52%) | 92 snapshot : 179 ( 3.58%) |
93 lvl-0 : 4 ( 0.08%) | 93 lvl-0 : 4 ( 0.08%) |
94 lvl-1 : 120 ( 2.40%) | 94 lvl-1 : 49 ( 0.98%) |
95 lvl-2 : 2 ( 0.04%) | 95 lvl-2 : 56 ( 1.12%) |
96 deltas : 4875 (97.48%) | 96 lvl-3 : 63 ( 1.26%) |
97 revision size : 67810463 | 97 lvl-4 : 7 ( 0.14%) |
98 snapshot : 14373347 (21.20%) | 98 deltas : 4822 (96.42%) |
99 lvl-0 : 804235 ( 1.19%) | 99 revision size : 63812493 |
100 lvl-1 : 13535903 (19.96%) | 100 snapshot : 10745878 (16.84%) |
101 lvl-2 : 33209 ( 0.05%) | 101 lvl-0 : 804204 ( 1.26%) |
102 deltas : 53437116 (78.80%) | 102 lvl-1 : 4986508 ( 7.81%) |
103 lvl-2 : 2858810 ( 4.48%) | |
104 lvl-3 : 1958906 ( 3.07%) | |
105 lvl-4 : 137450 ( 0.22%) | |
106 deltas : 53066615 (83.16%) | |
103 | 107 |
104 chunks : 5001 | 108 chunks : 5001 |
105 0x78 (x) : 5001 (100.00%) | 109 0x78 (x) : 5001 (100.00%) |
106 chunks size : 67810463 | 110 chunks size : 63812493 |
107 0x78 (x) : 67810463 (100.00%) | 111 0x78 (x) : 63812493 (100.00%) |
108 | 112 |
109 avg chain length : 18 | 113 avg chain length : 17 |
110 max chain length : 45 | 114 max chain length : 45 |
111 max chain reach : 25808240 | 115 max chain reach : 27506743 |
112 compression ratio : 25 | 116 compression ratio : 27 |
113 | 117 |
114 uncompressed data size (min/max/avg) : 346468 / 346472 / 346471 | 118 uncompressed data size (min/max/avg) : 346468 / 346472 / 346471 |
115 full revision size (min/max/avg) : 201014 / 201116 / 201058 | 119 full revision size (min/max/avg) : 201007 / 201077 / 201051 |
116 inter-snapshot size (min/max/avg) : 11623 / 173150 / 111222 | 120 inter-snapshot size (min/max/avg) : 13223 / 172097 / 56809 |
117 level-1 (min/max/avg) : 11623 / 173150 / 112799 | 121 level-1 (min/max/avg) : 13223 / 172097 / 101765 |
118 level-2 (min/max/avg) : 14151 / 19058 / 16604 | 122 level-2 (min/max/avg) : 28558 / 85237 / 51050 |
119 delta size (min/max/avg) : 10649 / 101790 / 10961 | 123 level-3 (min/max/avg) : 14647 / 41752 / 31093 |
124 level-4 (min/max/avg) : 18596 / 20760 / 19635 | |
125 delta size (min/max/avg) : 10649 / 104791 / 11005 | |
120 | 126 |
121 deltas against prev : 4207 (86.30%) | 127 deltas against prev : 4171 (86.50%) |
122 where prev = p1 : 4164 (98.98%) | 128 where prev = p1 : 4127 (98.95%) |
123 where prev = p2 : 0 ( 0.00%) | 129 where prev = p2 : 0 ( 0.00%) |
124 other : 43 ( 1.02%) | 130 other : 44 ( 1.05%) |
125 deltas against p1 : 653 (13.39%) | 131 deltas against p1 : 633 (13.13%) |
126 deltas against p2 : 15 ( 0.31%) | 132 deltas against p2 : 18 ( 0.37%) |
127 deltas against other : 0 ( 0.00%) | 133 deltas against other : 0 ( 0.00%) |