[PATCH 6 of 6] bundle: add optional 'tagsfnodecache' data to on disk bundle (issue5543)

Pierre-Yves David pierre-yves.david at ens-lyon.org
Sat May 6 04:05:00 EDT 2017


# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at octobus.net>
# Date 1493998275 -7200
#      Fri May 05 17:31:15 2017 +0200
# Node ID 3a04e2424b2821fa92d41ac9e40430aa25d4560d
# Parent  16b60a34def41f52e024d32d6e99e5d533cad02f
# EXP-Topic bundle2.tagsfnodecache
# Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
#              hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 3a04e2424b28
bundle: add optional 'tagsfnodecache' data to on disk bundle (issue5543)

This should help performance when unbundling.

diff --git a/mercurial/bundle2.py b/mercurial/bundle2.py
--- a/mercurial/bundle2.py
+++ b/mercurial/bundle2.py
@@ -1378,6 +1378,8 @@ def _addpartsfromopts(ui, repo, bundler,
         part.addparam('nbchanges', str(cg.extras['clcount']),
                       mandatory=False)
 
+    addparttagsfnodescache(repo, bundler, outgoing)
+
 def addparttagsfnodescache(repo, bundler, outgoing):
     # we include the tags fnode cache for the bundle changeset
     # (as an optional parts)
diff --git a/tests/test-tags.t b/tests/test-tags.t
--- a/tests/test-tags.t
+++ b/tests/test-tags.t
@@ -716,3 +716,15 @@ Running hg tags should produce tags2* fi
   0040: ff ff ff ff ff ff ff ff 40 f0 35 8c 19 e0 a7 d3 |........ at .5.....|
   0050: 8a 5c 6a 82 4d cf fb a5 87 d0 2f a3 1e 4f 2f 8a |.\j.M...../..O/.|
 
+Check that the bundle includes cache data
+
+  $ hg -R tagsclient bundle --all ./test-cache-in-bundle-all-rev.hg
+  4 changesets found
+  $ hg debugbundle ./test-cache-in-bundle-all-rev.hg
+  Stream params: sortdict([('Compression', 'BZ')])
+  changegroup -- "sortdict([('version', '02'), ('nbchanges', '4')])"
+      96ee1d7354c4ad7372047672c36a1f561e3a6a4c
+      c4dab0c2fd337eb9191f80c3024830a4889a8f34
+      f63cc8fe54e4d326f8d692805d70e092f851ddb1
+      40f0358cb314c824a5929ee527308d90e023bc10
+  hgtagsfnodes -- 'sortdict()'


More information about the Mercurial-devel mailing list