strip: compress bundle2 backup using BZ
authorPierre-Yves David <pierre-yves.david@fb.com>
Tue, 29 Sep 2015 14:42:03 -0700
changeset 26425 eb21b6679dc6
parent 26424 60825fbe2be1
child 26426 0486c16ce621
strip: compress bundle2 backup using BZ Storing uncompressed bundle on disk would be a regression. Strip backup using bundle2 are now compressed when requested.
mercurial/repair.py
tests/test-generaldelta.t
--- a/mercurial/repair.py	Tue Sep 29 14:41:40 2015 -0700
+++ b/mercurial/repair.py	Tue Sep 29 14:42:03 2015 -0700
@@ -38,13 +38,17 @@
     totalhash = util.sha1(''.join(allhashes)).hexdigest()
     name = "%s/%s-%s-%s.hg" % (backupdir, short(node), totalhash[:8], suffix)
 
+    comp = None
     if cgversion != '01':
         bundletype = "HG20"
+        if compress:
+            comp = 'BZ'
     elif compress:
         bundletype = "HG10BZ"
     else:
         bundletype = "HG10UN"
-    return changegroup.writebundle(repo.ui, cg, name, bundletype, vfs)
+    return changegroup.writebundle(repo.ui, cg, name, bundletype, vfs,
+                                   compression=comp)
 
 def _collectfiles(repo, striprev):
     """find out the filelogs affected by the strip"""
--- a/tests/test-generaldelta.t	Tue Sep 29 14:41:40 2015 -0700
+++ b/tests/test-generaldelta.t	Tue Sep 29 14:42:03 2015 -0700
@@ -107,7 +107,7 @@
   0 files updated, 0 files merged, 5 files removed, 0 files unresolved
   saved backup bundle to $TESTTMP/aggressive/.hg/strip-backup/1c5d4dc9a8b8-6c68e60c-backup.hg (glob)
   $ hg debugbundle .hg/strip-backup/*
-  Stream params: {}
+  Stream params: {'Compression': 'BZ'}
   changegroup -- "{'version': '02'}"
       1c5d4dc9a8b8d6e1750966d343e94db665e7a1e9