Rev 3616: Fix bug #256757 by restoring knit => pack fetches to use topological ordering and preserve deltas. in http://bzr.arbash-meinel.com/branches/bzr/1.6-dev/fetch_regression_256757

John Arbash Meinel john at arbash-meinel.com
Mon Aug 18 19:55:40 BST 2008


At http://bzr.arbash-meinel.com/branches/bzr/1.6-dev/fetch_regression_256757

------------------------------------------------------------
revno: 3616
revision-id: john at arbash-meinel.com-20080818185537-w3abkc3a29c7828t
parent: pqm at pqm.ubuntu.com-20080814165207-0sfq9u9vy6rl7oxc
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: fetch_regression_256757
timestamp: Mon 2008-08-18 13:55:37 -0500
message:
  Fix bug #256757 by restoring knit => pack fetches to use topological ordering and preserve deltas.
modified:
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/fetch.py                fetch.py-20050818234941-26fea6105696365d
  bzrlib/repofmt/pack_repo.py    pack_repo.py-20070813041115-gjv5ma7ktfqwsjgn-1
-------------- next part --------------
=== modified file 'NEWS'
--- a/NEWS	2008-08-14 15:10:46 +0000
+++ b/NEWS	2008-08-18 18:55:37 +0000
@@ -4,6 +4,18 @@
 
 .. contents::
 
+IN DEVELOPMENT
+--------------
+
+  BUG FIXES: 
+
+    * Fix a regression in knit => pack fetching.  We had a logic
+      inversion, causing fetches that should use deltas to use fulltexts.
+      We also weren't inserting in topological order, which caused some
+      entries to get bloated to fulltexts instead of staying deltas.
+      (John Arbash Meinel, #256757)
+
+
 bzr 1.6rc3 2008-08-14
 ---------------------
 

=== modified file 'bzrlib/fetch.py'
--- a/bzrlib/fetch.py	2008-07-28 09:12:28 +0000
+++ b/bzrlib/fetch.py	2008-08-18 18:55:37 +0000
@@ -180,7 +180,7 @@
                     from_texts = self.from_repository.texts
                     to_texts.insert_record_stream(from_texts.get_record_stream(
                         text_keys, self.to_repository._fetch_order,
-                        self.to_repository._fetch_uses_deltas))
+                        not self.to_repository._fetch_uses_deltas))
                     # Cause an error if a text occurs after we have done the
                     # copy.
                     text_keys = None

=== modified file 'bzrlib/repofmt/pack_repo.py'
--- a/bzrlib/repofmt/pack_repo.py	2008-08-13 17:15:14 +0000
+++ b/bzrlib/repofmt/pack_repo.py	2008-08-18 18:55:37 +0000
@@ -1719,7 +1719,7 @@
         self._reconcile_does_inventory_gc = True
         self._reconcile_fixes_text_parents = True
         self._reconcile_backsup_inventory = False
-        self._fetch_order = 'unsorted'
+        self._fetch_order = 'topological'
 
     def _warn_if_deprecated(self):
         # This class isn't deprecated



More information about the bazaar-commits mailing list