D699: revlog: refactor chain variable
durham (Durham Goode)
phabricator at mercurial-scm.org
Wed Sep 13 17:49:31 UTC 2017
durham created this revision.
Herald added a reviewer: indygreg.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
Previously the addgroup loop would set chain to be the result of
self._addrevision(node,...). Since _addrevision now always returns the passed in
node, we can drop that behavior and just always set chain = node in the loop.
This will be useful in a future patch where we refactor the cg.deltachunk logic
to another function and therefore chain disappears entirely from this function.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D699
AFFECTED FILES
mercurial/revlog.py
CHANGE DETAILS
diff --git a/mercurial/revlog.py b/mercurial/revlog.py
--- a/mercurial/revlog.py
+++ b/mercurial/revlog.py
@@ -1916,11 +1916,11 @@
flags = chunkdata['flags'] or REVIDX_DEFAULT_FLAGS
nodes.append(node)
+ chain = node
link = linkmapper(cs)
if node in self.nodemap:
# this can happen if two branches make the same change
- chain = node
continue
for p in (p1, p2):
@@ -1954,13 +1954,13 @@
# We're only using addgroup() in the context of changegroup
# generation so the revision data can always be handled as raw
# by the flagprocessor.
- chain = self._addrevision(node, None, transaction, link,
- p1, p2, flags, (baserev, delta),
- ifh, dfh,
- alwayscache=bool(addrevisioncb))
+ self._addrevision(node, None, transaction, link,
+ p1, p2, flags, (baserev, delta),
+ ifh, dfh,
+ alwayscache=bool(addrevisioncb))
if addrevisioncb:
- addrevisioncb(self, chain)
+ addrevisioncb(self, node)
if not dfh and not self._inline:
# addrevision switched from inline to conventional
To: durham, indygreg, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list