[PATCH 1 of 4] changegroup: use changelog.readfiles
Gregory Szorc
gregory.szorc at gmail.com
Sun Feb 28 07:27:30 UTC 2016
# HG changeset patch
# User Gregory Szorc <gregory.szorc at gmail.com>
# Date 1456643165 28800
# Sat Feb 27 23:06:05 2016 -0800
# Node ID 28cf83f79951bba88e324c66e66261e06030dc46
# Parent 41dcd754526612c43b9695df8851557c851828ef
changegroup: use changelog.readfiles
We have a dedicated function to get just the list of files in
a changelog entry. Use it.
This will presumably speed up changegroup application since we're
no longer decoding the entire changelog entry. But I didn't measure
the impact.
diff --git a/mercurial/changegroup.py b/mercurial/changegroup.py
--- a/mercurial/changegroup.py
+++ b/mercurial/changegroup.py
@@ -358,17 +358,17 @@ class cg1unpacker(object):
def __call__(self):
repo.ui.progress(self._step, self._count,
unit=_('chunks'), total=self._total)
self._count += 1
self.callback = prog(_('changesets'), expectedtotal)
efiles = set()
def onchangelog(cl, node):
- efiles.update(cl.read(node)[3])
+ efiles.update(cl.readfiles(node))
self.changelogheader()
srccontent = cl.addgroup(self, csmap, trp,
addrevisioncb=onchangelog)
efiles = len(efiles)
if not (srccontent or emptyok):
raise error.Abort(_("received changelog group is empty"))
More information about the Mercurial-devel
mailing list