Show More
@@ -432,9 +432,6 b' class localrepository(object):' | |||||
432 | 'aggressivemergedeltas', False) |
|
432 | 'aggressivemergedeltas', False) | |
433 | self.svfs.options['aggressivemergedeltas'] = aggressivemergedeltas |
|
433 | self.svfs.options['aggressivemergedeltas'] = aggressivemergedeltas | |
434 | self.svfs.options['lazydeltabase'] = not scmutil.gddeltaconfig(self.ui) |
|
434 | self.svfs.options['lazydeltabase'] = not scmutil.gddeltaconfig(self.ui) | |
435 | chainspan = self.ui.configbytes('experimental', 'maxdeltachainspan', -1) |
|
|||
436 | if 0 <= chainspan: |
|
|||
437 | self.svfs.options['maxdeltachainspan'] = chainspan |
|
|||
438 |
|
435 | |||
439 | for r in self.requirements: |
|
436 | for r in self.requirements: | |
440 | if r.startswith('exp-compression-'): |
|
437 | if r.startswith('exp-compression-'): |
@@ -282,7 +282,6 b' class revlog(object):' | |||||
282 | self._nodecache = {nullid: nullrev} |
|
282 | self._nodecache = {nullid: nullrev} | |
283 | self._nodepos = None |
|
283 | self._nodepos = None | |
284 | self._compengine = 'zlib' |
|
284 | self._compengine = 'zlib' | |
285 | self._maxdeltachainspan = -1 |
|
|||
286 |
|
285 | |||
287 | v = REVLOG_DEFAULT_VERSION |
|
286 | v = REVLOG_DEFAULT_VERSION | |
288 | opts = getattr(opener, 'options', None) |
|
287 | opts = getattr(opener, 'options', None) | |
@@ -301,8 +300,6 b' class revlog(object):' | |||||
301 | self._lazydeltabase = bool(opts.get('lazydeltabase', False)) |
|
300 | self._lazydeltabase = bool(opts.get('lazydeltabase', False)) | |
302 | if 'compengine' in opts: |
|
301 | if 'compengine' in opts: | |
303 | self._compengine = opts['compengine'] |
|
302 | self._compengine = opts['compengine'] | |
304 | if 'maxdeltachainspan' in opts: |
|
|||
305 | self._maxdeltachainspan = opts['maxdeltachainspan'] |
|
|||
306 |
|
303 | |||
307 | if self._chunkcachesize <= 0: |
|
304 | if self._chunkcachesize <= 0: | |
308 | raise RevlogError(_('revlog chunk cache size %r is not greater ' |
|
305 | raise RevlogError(_('revlog chunk cache size %r is not greater ' | |
@@ -1599,13 +1596,7 b' class revlog(object):' | |||||
1599 | # - 'compresseddeltalen' is the sum of the total size of deltas we need |
|
1596 | # - 'compresseddeltalen' is the sum of the total size of deltas we need | |
1600 | # to apply -- bounding it limits the amount of CPU we consume. |
|
1597 | # to apply -- bounding it limits the amount of CPU we consume. | |
1601 | dist, l, data, base, chainbase, chainlen, compresseddeltalen = d |
|
1598 | dist, l, data, base, chainbase, chainlen, compresseddeltalen = d | |
1602 |
|
1599 | if (dist > textlen * 4 or l > textlen or | ||
1603 | defaultmax = textlen * 4 |
|
|||
1604 | maxdist = self._maxdeltachainspan |
|
|||
1605 | if not maxdist: |
|
|||
1606 | maxdist = dist # ensure the conditional pass |
|
|||
1607 | maxdist = max(maxdist, defaultmax) |
|
|||
1608 | if (dist > maxdist or l > textlen or |
|
|||
1609 | compresseddeltalen > textlen * 2 or |
|
1600 | compresseddeltalen > textlen * 2 or | |
1610 | (self._maxchainlen and chainlen > self._maxchainlen)): |
|
1601 | (self._maxchainlen and chainlen > self._maxchainlen)): | |
1611 | return False |
|
1602 | return False |
@@ -159,191 +159,3 b' Test that strip bundle use bundle2' | |||||
159 | 1c5d4dc9a8b8d6e1750966d343e94db665e7a1e9 |
|
159 | 1c5d4dc9a8b8d6e1750966d343e94db665e7a1e9 | |
160 |
|
160 | |||
161 | $ cd .. |
|
161 | $ cd .. | |
162 |
|
||||
163 | test maxdeltachainspan |
|
|||
164 |
|
||||
165 | $ hg init source-repo |
|
|||
166 | $ cd source-repo |
|
|||
167 | $ hg debugbuilddag --new-file '.+5:brancha$.+11:branchb$.+30:branchc<brancha+2<branchb+2' |
|
|||
168 | $ cd .. |
|
|||
169 | $ hg -R source-repo debugindex -m |
|
|||
170 | rev offset length delta linkrev nodeid p1 p2 |
|
|||
171 | 0 0 46 -1 0 19deeef41503 000000000000 000000000000 |
|
|||
172 | 1 46 57 0 1 fffc37b38c40 19deeef41503 000000000000 |
|
|||
173 | 2 103 57 1 2 5822d75c83d9 fffc37b38c40 000000000000 |
|
|||
174 | 3 160 57 2 3 19cf2273e601 5822d75c83d9 000000000000 |
|
|||
175 | 4 217 57 3 4 d45ead487afe 19cf2273e601 000000000000 |
|
|||
176 | 5 274 57 4 5 96e0c2ce55ed d45ead487afe 000000000000 |
|
|||
177 | 6 331 46 -1 6 0c2ea5222c74 000000000000 000000000000 |
|
|||
178 | 7 377 57 6 7 4ca08a89134d 0c2ea5222c74 000000000000 |
|
|||
179 | 8 434 57 7 8 c973dbfd30ac 4ca08a89134d 000000000000 |
|
|||
180 | 9 491 57 8 9 d81d878ff2cd c973dbfd30ac 000000000000 |
|
|||
181 | 10 548 58 9 10 dbee7f0dd760 d81d878ff2cd 000000000000 |
|
|||
182 | 11 606 58 10 11 474be9f1fd4e dbee7f0dd760 000000000000 |
|
|||
183 | 12 664 58 11 12 594a27502c85 474be9f1fd4e 000000000000 |
|
|||
184 | 13 722 58 12 13 a7d25307d6a9 594a27502c85 000000000000 |
|
|||
185 | 14 780 58 13 14 3eb53082272e a7d25307d6a9 000000000000 |
|
|||
186 | 15 838 58 14 15 d1e94c85caf6 3eb53082272e 000000000000 |
|
|||
187 | 16 896 58 15 16 8933d9629788 d1e94c85caf6 000000000000 |
|
|||
188 | 17 954 58 16 17 a33416e52d91 8933d9629788 000000000000 |
|
|||
189 | 18 1012 47 -1 18 4ccbf31021ed 000000000000 000000000000 |
|
|||
190 | 19 1059 58 18 19 dcad7a25656c 4ccbf31021ed 000000000000 |
|
|||
191 | 20 1117 58 19 20 617c4f8be75f dcad7a25656c 000000000000 |
|
|||
192 | 21 1175 58 20 21 975b9c1d75bb 617c4f8be75f 000000000000 |
|
|||
193 | 22 1233 58 21 22 74f09cd33b70 975b9c1d75bb 000000000000 |
|
|||
194 | 23 1291 58 22 23 54e79bfa7ef1 74f09cd33b70 000000000000 |
|
|||
195 | 24 1349 58 23 24 c556e7ff90af 54e79bfa7ef1 000000000000 |
|
|||
196 | 25 1407 58 24 25 42daedfe9c6b c556e7ff90af 000000000000 |
|
|||
197 | 26 1465 58 25 26 f302566947c7 42daedfe9c6b 000000000000 |
|
|||
198 | 27 1523 58 26 27 2346959851cb f302566947c7 000000000000 |
|
|||
199 | 28 1581 58 27 28 ca8d867106b4 2346959851cb 000000000000 |
|
|||
200 | 29 1639 58 28 29 fd9152decab2 ca8d867106b4 000000000000 |
|
|||
201 | 30 1697 58 29 30 3fe34080a79b fd9152decab2 000000000000 |
|
|||
202 | 31 1755 58 30 31 bce61a95078e 3fe34080a79b 000000000000 |
|
|||
203 | 32 1813 58 31 32 1dd9ba54ba15 bce61a95078e 000000000000 |
|
|||
204 | 33 1871 58 32 33 3cd9b90a9972 1dd9ba54ba15 000000000000 |
|
|||
205 | 34 1929 58 33 34 5db8c9754ef5 3cd9b90a9972 000000000000 |
|
|||
206 | 35 1987 58 34 35 ee4a240cc16c 5db8c9754ef5 000000000000 |
|
|||
207 | 36 2045 58 35 36 9e1d38725343 ee4a240cc16c 000000000000 |
|
|||
208 | 37 2103 58 36 37 3463f73086a8 9e1d38725343 000000000000 |
|
|||
209 | 38 2161 58 37 38 88af72fab449 3463f73086a8 000000000000 |
|
|||
210 | 39 2219 58 38 39 472f5ce73785 88af72fab449 000000000000 |
|
|||
211 | 40 2277 58 39 40 c91b8351e5b8 472f5ce73785 000000000000 |
|
|||
212 | 41 2335 58 40 41 9c8289c5c5c0 c91b8351e5b8 000000000000 |
|
|||
213 | 42 2393 58 41 42 a13fd4a09d76 9c8289c5c5c0 000000000000 |
|
|||
214 | 43 2451 58 42 43 2ec2c81cafe0 a13fd4a09d76 000000000000 |
|
|||
215 | 44 2509 58 43 44 f27fdd174392 2ec2c81cafe0 000000000000 |
|
|||
216 | 45 2567 58 44 45 a539ec59fe41 f27fdd174392 000000000000 |
|
|||
217 | 46 2625 58 45 46 5e98b9ecb738 a539ec59fe41 000000000000 |
|
|||
218 | 47 2683 58 46 47 31e6b47899d0 5e98b9ecb738 000000000000 |
|
|||
219 | 48 2741 58 47 48 2cf25d6636bd 31e6b47899d0 000000000000 |
|
|||
220 | 49 2799 197 -1 49 9fff62ea0624 96e0c2ce55ed 000000000000 |
|
|||
221 | 50 2996 58 49 50 467f8e30a066 9fff62ea0624 000000000000 |
|
|||
222 | 51 3054 356 50 51 346db97283df a33416e52d91 000000000000 |
|
|||
223 | 52 3410 58 51 52 4e003fd4d5cd 346db97283df 000000000000 |
|
|||
224 | $ hg clone --pull source-repo --config experimental.maxdeltachainspan=2800 relax-chain --config format.generaldelta=yes |
|
|||
225 | requesting all changes |
|
|||
226 | adding changesets |
|
|||
227 | adding manifests |
|
|||
228 | adding file changes |
|
|||
229 | added 53 changesets with 53 changes to 53 files (+2 heads) |
|
|||
230 | updating to branch default |
|
|||
231 | 14 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
|||
232 | $ hg -R relax-chain debugindex -m |
|
|||
233 | rev offset length delta linkrev nodeid p1 p2 |
|
|||
234 | 0 0 46 -1 0 19deeef41503 000000000000 000000000000 |
|
|||
235 | 1 46 57 0 1 fffc37b38c40 19deeef41503 000000000000 |
|
|||
236 | 2 103 57 1 2 5822d75c83d9 fffc37b38c40 000000000000 |
|
|||
237 | 3 160 57 2 3 19cf2273e601 5822d75c83d9 000000000000 |
|
|||
238 | 4 217 57 3 4 d45ead487afe 19cf2273e601 000000000000 |
|
|||
239 | 5 274 57 4 5 96e0c2ce55ed d45ead487afe 000000000000 |
|
|||
240 | 6 331 46 -1 6 0c2ea5222c74 000000000000 000000000000 |
|
|||
241 | 7 377 57 6 7 4ca08a89134d 0c2ea5222c74 000000000000 |
|
|||
242 | 8 434 57 7 8 c973dbfd30ac 4ca08a89134d 000000000000 |
|
|||
243 | 9 491 57 8 9 d81d878ff2cd c973dbfd30ac 000000000000 |
|
|||
244 | 10 548 58 9 10 dbee7f0dd760 d81d878ff2cd 000000000000 |
|
|||
245 | 11 606 58 10 11 474be9f1fd4e dbee7f0dd760 000000000000 |
|
|||
246 | 12 664 58 11 12 594a27502c85 474be9f1fd4e 000000000000 |
|
|||
247 | 13 722 58 12 13 a7d25307d6a9 594a27502c85 000000000000 |
|
|||
248 | 14 780 58 13 14 3eb53082272e a7d25307d6a9 000000000000 |
|
|||
249 | 15 838 58 14 15 d1e94c85caf6 3eb53082272e 000000000000 |
|
|||
250 | 16 896 58 15 16 8933d9629788 d1e94c85caf6 000000000000 |
|
|||
251 | 17 954 58 16 17 a33416e52d91 8933d9629788 000000000000 |
|
|||
252 | 18 1012 47 -1 18 4ccbf31021ed 000000000000 000000000000 |
|
|||
253 | 19 1059 58 18 19 dcad7a25656c 4ccbf31021ed 000000000000 |
|
|||
254 | 20 1117 58 19 20 617c4f8be75f dcad7a25656c 000000000000 |
|
|||
255 | 21 1175 58 20 21 975b9c1d75bb 617c4f8be75f 000000000000 |
|
|||
256 | 22 1233 58 21 22 74f09cd33b70 975b9c1d75bb 000000000000 |
|
|||
257 | 23 1291 58 22 23 54e79bfa7ef1 74f09cd33b70 000000000000 |
|
|||
258 | 24 1349 58 23 24 c556e7ff90af 54e79bfa7ef1 000000000000 |
|
|||
259 | 25 1407 58 24 25 42daedfe9c6b c556e7ff90af 000000000000 |
|
|||
260 | 26 1465 58 25 26 f302566947c7 42daedfe9c6b 000000000000 |
|
|||
261 | 27 1523 58 26 27 2346959851cb f302566947c7 000000000000 |
|
|||
262 | 28 1581 58 27 28 ca8d867106b4 2346959851cb 000000000000 |
|
|||
263 | 29 1639 58 28 29 fd9152decab2 ca8d867106b4 000000000000 |
|
|||
264 | 30 1697 58 29 30 3fe34080a79b fd9152decab2 000000000000 |
|
|||
265 | 31 1755 58 30 31 bce61a95078e 3fe34080a79b 000000000000 |
|
|||
266 | 32 1813 58 31 32 1dd9ba54ba15 bce61a95078e 000000000000 |
|
|||
267 | 33 1871 58 32 33 3cd9b90a9972 1dd9ba54ba15 000000000000 |
|
|||
268 | 34 1929 58 33 34 5db8c9754ef5 3cd9b90a9972 000000000000 |
|
|||
269 | 35 1987 58 34 35 ee4a240cc16c 5db8c9754ef5 000000000000 |
|
|||
270 | 36 2045 58 35 36 9e1d38725343 ee4a240cc16c 000000000000 |
|
|||
271 | 37 2103 58 36 37 3463f73086a8 9e1d38725343 000000000000 |
|
|||
272 | 38 2161 58 37 38 88af72fab449 3463f73086a8 000000000000 |
|
|||
273 | 39 2219 58 38 39 472f5ce73785 88af72fab449 000000000000 |
|
|||
274 | 40 2277 58 39 40 c91b8351e5b8 472f5ce73785 000000000000 |
|
|||
275 | 41 2335 58 40 41 9c8289c5c5c0 c91b8351e5b8 000000000000 |
|
|||
276 | 42 2393 58 41 42 a13fd4a09d76 9c8289c5c5c0 000000000000 |
|
|||
277 | 43 2451 58 42 43 2ec2c81cafe0 a13fd4a09d76 000000000000 |
|
|||
278 | 44 2509 58 43 44 f27fdd174392 2ec2c81cafe0 000000000000 |
|
|||
279 | 45 2567 58 44 45 a539ec59fe41 f27fdd174392 000000000000 |
|
|||
280 | 46 2625 58 45 46 5e98b9ecb738 a539ec59fe41 000000000000 |
|
|||
281 | 47 2683 58 46 47 31e6b47899d0 5e98b9ecb738 000000000000 |
|
|||
282 | 48 2741 58 47 48 2cf25d6636bd 31e6b47899d0 000000000000 |
|
|||
283 | 49 2799 197 -1 49 9fff62ea0624 96e0c2ce55ed 000000000000 |
|
|||
284 | 50 2996 58 49 50 467f8e30a066 9fff62ea0624 000000000000 |
|
|||
285 | 51 3054 58 17 51 346db97283df a33416e52d91 000000000000 |
|
|||
286 | 52 3112 369 -1 52 4e003fd4d5cd 346db97283df 000000000000 |
|
|||
287 | $ hg clone --pull source-repo --config experimental.maxdeltachainspan=0 noconst-chain --config format.generaldelta=yes |
|
|||
288 | requesting all changes |
|
|||
289 | adding changesets |
|
|||
290 | adding manifests |
|
|||
291 | adding file changes |
|
|||
292 | added 53 changesets with 53 changes to 53 files (+2 heads) |
|
|||
293 | updating to branch default |
|
|||
294 | 14 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
|||
295 | $ hg -R noconst-chain debugindex -m |
|
|||
296 | rev offset length delta linkrev nodeid p1 p2 |
|
|||
297 | 0 0 46 -1 0 19deeef41503 000000000000 000000000000 |
|
|||
298 | 1 46 57 0 1 fffc37b38c40 19deeef41503 000000000000 |
|
|||
299 | 2 103 57 1 2 5822d75c83d9 fffc37b38c40 000000000000 |
|
|||
300 | 3 160 57 2 3 19cf2273e601 5822d75c83d9 000000000000 |
|
|||
301 | 4 217 57 3 4 d45ead487afe 19cf2273e601 000000000000 |
|
|||
302 | 5 274 57 4 5 96e0c2ce55ed d45ead487afe 000000000000 |
|
|||
303 | 6 331 46 -1 6 0c2ea5222c74 000000000000 000000000000 |
|
|||
304 | 7 377 57 6 7 4ca08a89134d 0c2ea5222c74 000000000000 |
|
|||
305 | 8 434 57 7 8 c973dbfd30ac 4ca08a89134d 000000000000 |
|
|||
306 | 9 491 57 8 9 d81d878ff2cd c973dbfd30ac 000000000000 |
|
|||
307 | 10 548 58 9 10 dbee7f0dd760 d81d878ff2cd 000000000000 |
|
|||
308 | 11 606 58 10 11 474be9f1fd4e dbee7f0dd760 000000000000 |
|
|||
309 | 12 664 58 11 12 594a27502c85 474be9f1fd4e 000000000000 |
|
|||
310 | 13 722 58 12 13 a7d25307d6a9 594a27502c85 000000000000 |
|
|||
311 | 14 780 58 13 14 3eb53082272e a7d25307d6a9 000000000000 |
|
|||
312 | 15 838 58 14 15 d1e94c85caf6 3eb53082272e 000000000000 |
|
|||
313 | 16 896 58 15 16 8933d9629788 d1e94c85caf6 000000000000 |
|
|||
314 | 17 954 58 16 17 a33416e52d91 8933d9629788 000000000000 |
|
|||
315 | 18 1012 47 -1 18 4ccbf31021ed 000000000000 000000000000 |
|
|||
316 | 19 1059 58 18 19 dcad7a25656c 4ccbf31021ed 000000000000 |
|
|||
317 | 20 1117 58 19 20 617c4f8be75f dcad7a25656c 000000000000 |
|
|||
318 | 21 1175 58 20 21 975b9c1d75bb 617c4f8be75f 000000000000 |
|
|||
319 | 22 1233 58 21 22 74f09cd33b70 975b9c1d75bb 000000000000 |
|
|||
320 | 23 1291 58 22 23 54e79bfa7ef1 74f09cd33b70 000000000000 |
|
|||
321 | 24 1349 58 23 24 c556e7ff90af 54e79bfa7ef1 000000000000 |
|
|||
322 | 25 1407 58 24 25 42daedfe9c6b c556e7ff90af 000000000000 |
|
|||
323 | 26 1465 58 25 26 f302566947c7 42daedfe9c6b 000000000000 |
|
|||
324 | 27 1523 58 26 27 2346959851cb f302566947c7 000000000000 |
|
|||
325 | 28 1581 58 27 28 ca8d867106b4 2346959851cb 000000000000 |
|
|||
326 | 29 1639 58 28 29 fd9152decab2 ca8d867106b4 000000000000 |
|
|||
327 | 30 1697 58 29 30 3fe34080a79b fd9152decab2 000000000000 |
|
|||
328 | 31 1755 58 30 31 bce61a95078e 3fe34080a79b 000000000000 |
|
|||
329 | 32 1813 58 31 32 1dd9ba54ba15 bce61a95078e 000000000000 |
|
|||
330 | 33 1871 58 32 33 3cd9b90a9972 1dd9ba54ba15 000000000000 |
|
|||
331 | 34 1929 58 33 34 5db8c9754ef5 3cd9b90a9972 000000000000 |
|
|||
332 | 35 1987 58 34 35 ee4a240cc16c 5db8c9754ef5 000000000000 |
|
|||
333 | 36 2045 58 35 36 9e1d38725343 ee4a240cc16c 000000000000 |
|
|||
334 | 37 2103 58 36 37 3463f73086a8 9e1d38725343 000000000000 |
|
|||
335 | 38 2161 58 37 38 88af72fab449 3463f73086a8 000000000000 |
|
|||
336 | 39 2219 58 38 39 472f5ce73785 88af72fab449 000000000000 |
|
|||
337 | 40 2277 58 39 40 c91b8351e5b8 472f5ce73785 000000000000 |
|
|||
338 | 41 2335 58 40 41 9c8289c5c5c0 c91b8351e5b8 000000000000 |
|
|||
339 | 42 2393 58 41 42 a13fd4a09d76 9c8289c5c5c0 000000000000 |
|
|||
340 | 43 2451 58 42 43 2ec2c81cafe0 a13fd4a09d76 000000000000 |
|
|||
341 | 44 2509 58 43 44 f27fdd174392 2ec2c81cafe0 000000000000 |
|
|||
342 | 45 2567 58 44 45 a539ec59fe41 f27fdd174392 000000000000 |
|
|||
343 | 46 2625 58 45 46 5e98b9ecb738 a539ec59fe41 000000000000 |
|
|||
344 | 47 2683 58 46 47 31e6b47899d0 5e98b9ecb738 000000000000 |
|
|||
345 | 48 2741 58 47 48 2cf25d6636bd 31e6b47899d0 000000000000 |
|
|||
346 | 49 2799 58 5 49 9fff62ea0624 96e0c2ce55ed 000000000000 |
|
|||
347 | 50 2857 58 49 50 467f8e30a066 9fff62ea0624 000000000000 |
|
|||
348 | 51 2915 58 17 51 346db97283df a33416e52d91 000000000000 |
|
|||
349 | 52 2973 58 51 52 4e003fd4d5cd 346db97283df 000000000000 |
|
General Comments 0
You need to be logged in to leave comments.
Login now