# HG changeset patch # User Pierre-Yves David # Date 2019-06-12 13:22:49 # Node ID 716d575df275306e916a07a3382c4539af6be161 # Parent 26a31c88e1a5d6f8c2d96c956ad345756dd48f5b upgrade: always use full text if "full-add" mode is enable We should not be using a delta since the goal is to perform a full addition from scratch in all cases. Without this patch, `hg debugupgraderepo --optimize re-delta-fulladd --run` can crash. diff --git a/mercurial/revlog.py b/mercurial/revlog.py --- a/mercurial/revlog.py +++ b/mercurial/revlog.py @@ -2461,7 +2461,8 @@ class revlog(object): # the revlog chunk is a delta. cachedelta = None rawtext = None - if destrevlog._lazydelta: + if (deltareuse != self.DELTAREUSEFULLADD + and destrevlog._lazydelta): dp = self.deltaparent(rev) if dp != nullrev: cachedelta = (dp, bytes(self._chunk(rev)))