comparison mercurial/utils/storageutil.py @ 40432:968dd7e02ac5

changegroup: allow to force delta to be against p1 This new developer option is useful to general more "generic" bundle. Without this option, a bundle generated from the repository use deltas similar to the one stored in the specific repository it was generated from. This makes performance testing a bit tricky. Using deltas similar to the final result means all delta stored in the bundle can be applied to the target repository without any further processing (except for the rare case of a full snapshot). The application of such bundles (almost) never exercises the (slower) path of searching for a new valid delta. This result in unrealistic and too favorable timing and profile. Instead, we introduce an option to make sure all revisions are stored as a delta against p1. It might not be the best generation option, but it guarantees that the content will be "generic", not favoring a specific target.
author Boris Feld <boris.feld@octobus.net>
date Wed, 10 Oct 2018 00:21:02 +0200
parents 59a870a4ad6e
children 4fe63b573791
comparison
equal deleted inserted replaced
40430:6a917075535a 40432:968dd7e02ac5
371 baserev = prevrev 371 baserev = prevrev
372 372
373 # We're instructed to send fulltext. Honor that. 373 # We're instructed to send fulltext. Honor that.
374 elif deltamode == repository.CG_DELTAMODE_FULL: 374 elif deltamode == repository.CG_DELTAMODE_FULL:
375 baserev = nullrev 375 baserev = nullrev
376 # We're instructed to use p1. Honor that
377 elif deltamode == repository.CG_DELTAMODE_P1:
378 baserev = p1rev
376 379
377 # There is a delta in storage. We try to use that because it 380 # There is a delta in storage. We try to use that because it
378 # amounts to effectively copying data from storage and is 381 # amounts to effectively copying data from storage and is
379 # therefore the fastest. 382 # therefore the fastest.
380 elif deltaparentrev != nullrev: 383 elif deltaparentrev != nullrev: