]> arthur.barton.de Git - bup.git/commitdiff
Don't generate midx files in dumb server mode
authorBrandon Low <lostlogic@lostlogicx.com>
Wed, 5 Jan 2011 17:28:24 +0000 (09:28 -0800)
committerAvery Pennarun <apenwarr@gmail.com>
Thu, 6 Jan 2011 23:23:59 +0000 (15:23 -0800)
Signed-off-by: Brandon Low <lostlogic@lostlogicx.com>
cmd/server-cmd.py
lib/bup/git.py

index 6ec2de3cb9a48a200899426d94b476774a87c0b6..812c5e36283b8ee667ceebc12d57721c3514b109 100755 (executable)
@@ -52,7 +52,7 @@ def send_index(conn, name):
 
 
 def receive_objects_v2(conn, junk):
-    global suspended_w
+    global suspended_w, server_mode
     git.check_repo_or_die()
     suggested = {}
     if suspended_w:
@@ -70,7 +70,7 @@ def receive_objects_v2(conn, junk):
         if not n:
             debug1('bup server: received %d object%s.\n' 
                 % (w.count, w.count!=1 and "s" or ''))
-            fullpath = w.close()
+            fullpath = w.close(run_midx=(server_mode=='smart'))
             if fullpath:
                 (dir, name) = os.path.split(fullpath)
                 conn.write('%s.idx\n' % name)
index 081ae623ead87670c064884d5d2d927e455c792a..518adc5631b4ce8ebe97d44862fdf49c40a46b60 100644 (file)
@@ -651,7 +651,7 @@ class PackWriter:
             f.close()
             os.unlink(self.filename + '.pack')
 
-    def _end(self):
+    def _end(self, run_midx=True):
         f = self.file
         if not f: return None
         self.file = None
@@ -684,12 +684,13 @@ class PackWriter:
         os.rename(self.filename + '.pack', nameprefix + '.pack')
         os.rename(self.filename + '.idx', nameprefix + '.idx')
 
-        auto_midx(repo('objects/pack'))
+        if run_midx:
+            auto_midx(repo('objects/pack'))
         return nameprefix
 
-    def close(self):
+    def close(self, run_midx=True):
         """Close the pack file and move it to its definitive path."""
-        return self._end()
+        return self._end(run_midx=run_midx)
 
     def _write_pack_idx_v2(self, file, idx, packbin):
         sum = Sha1()