Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/revlog.py @ 49248:2bcf5e14bb7e
deltas: add a `debug.revlog.debug-delta` config option enable output
This provide a way to enable the code introduced in the previous changeset. This
will provide a large amount of output when applying a bundle with details about
each delta "computation".
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 19 May 2022 23:39:42 +0100 |
parents | 5b65721a75eb |
children | 31602d471b60 |
comparison
equal
deleted
inserted
replaced
49247:e6b7c6fbeb48 | 49248:2bcf5e14bb7e |
---|---|
344 self._chunkcache = (0, b'') | 344 self._chunkcache = (0, b'') |
345 # How much data to read and cache into the raw revlog data cache. | 345 # How much data to read and cache into the raw revlog data cache. |
346 self._chunkcachesize = 65536 | 346 self._chunkcachesize = 65536 |
347 self._maxchainlen = None | 347 self._maxchainlen = None |
348 self._deltabothparents = True | 348 self._deltabothparents = True |
349 self._debug_delta = False | |
349 self.index = None | 350 self.index = None |
350 self._docket = None | 351 self._docket = None |
351 self._nodemap_docket = None | 352 self._nodemap_docket = None |
352 # Mapping of partial identifiers to full nodes. | 353 # Mapping of partial identifiers to full nodes. |
353 self._pcache = {} | 354 self._pcache = {} |
421 self._deltabothparents = opts[b'deltabothparents'] | 422 self._deltabothparents = opts[b'deltabothparents'] |
422 self._lazydelta = bool(opts.get(b'lazydelta', True)) | 423 self._lazydelta = bool(opts.get(b'lazydelta', True)) |
423 self._lazydeltabase = False | 424 self._lazydeltabase = False |
424 if self._lazydelta: | 425 if self._lazydelta: |
425 self._lazydeltabase = bool(opts.get(b'lazydeltabase', False)) | 426 self._lazydeltabase = bool(opts.get(b'lazydeltabase', False)) |
427 if b'debug-delta' in opts: | |
428 self._debug_delta = opts[b'debug-delta'] | |
426 if b'compengine' in opts: | 429 if b'compengine' in opts: |
427 self._compengine = opts[b'compengine'] | 430 self._compengine = opts[b'compengine'] |
428 if b'zlib.level' in opts: | 431 if b'zlib.level' in opts: |
429 self._compengineopts[b'zlib.level'] = opts[b'zlib.level'] | 432 self._compengineopts[b'zlib.level'] = opts[b'zlib.level'] |
430 if b'zstd.level' in opts: | 433 if b'zstd.level' in opts: |
2424 ) | 2427 ) |
2425 else: | 2428 else: |
2426 textlen = len(rawtext) | 2429 textlen = len(rawtext) |
2427 | 2430 |
2428 if deltacomputer is None: | 2431 if deltacomputer is None: |
2429 deltacomputer = deltautil.deltacomputer(self) | 2432 write_debug = None |
2433 if self._debug_delta: | |
2434 write_debug = transaction._report | |
2435 deltacomputer = deltautil.deltacomputer( | |
2436 self, write_debug=write_debug | |
2437 ) | |
2430 | 2438 |
2431 revinfo = revlogutils.revisioninfo( | 2439 revinfo = revlogutils.revisioninfo( |
2432 node, | 2440 node, |
2433 p1, | 2441 p1, |
2434 p2, | 2442 p2, |
2637 | 2645 |
2638 self._adding_group = True | 2646 self._adding_group = True |
2639 empty = True | 2647 empty = True |
2640 try: | 2648 try: |
2641 with self._writing(transaction): | 2649 with self._writing(transaction): |
2642 deltacomputer = deltautil.deltacomputer(self) | 2650 write_debug = None |
2651 if self._debug_delta: | |
2652 write_debug = transaction._report | |
2653 deltacomputer = deltautil.deltacomputer( | |
2654 self, | |
2655 write_debug=write_debug, | |
2656 ) | |
2643 # loop through our set of deltas | 2657 # loop through our set of deltas |
2644 for data in deltas: | 2658 for data in deltas: |
2645 ( | 2659 ( |
2646 node, | 2660 node, |
2647 p1, | 2661 p1, |
3013 deltareuse, | 3027 deltareuse, |
3014 forcedeltabothparents, | 3028 forcedeltabothparents, |
3015 sidedata_helpers, | 3029 sidedata_helpers, |
3016 ): | 3030 ): |
3017 """perform the core duty of `revlog.clone` after parameter processing""" | 3031 """perform the core duty of `revlog.clone` after parameter processing""" |
3018 deltacomputer = deltautil.deltacomputer(destrevlog) | 3032 write_debug = None |
3033 if self._debug_delta: | |
3034 write_debug = tr._report | |
3035 deltacomputer = deltautil.deltacomputer( | |
3036 destrevlog, | |
3037 write_debug=write_debug, | |
3038 ) | |
3019 index = self.index | 3039 index = self.index |
3020 for rev in self: | 3040 for rev in self: |
3021 entry = index[rev] | 3041 entry = index[rev] |
3022 | 3042 |
3023 # Some classes override linkrev to take filtered revs into | 3043 # Some classes override linkrev to take filtered revs into |