Rev 3797: Change the api of reload_pack_names(). in http://bzr.arbash-meinel.com/branches/bzr/1.9-dev/pack_retry_153786
John Arbash Meinel
john at arbash-meinel.com
Thu Oct 23 22:04:50 BST 2008
At http://bzr.arbash-meinel.com/branches/bzr/1.9-dev/pack_retry_153786
------------------------------------------------------------
revno: 3797
revision-id: john at arbash-meinel.com-20081023210428-b70cl16n1h54gwa8
parent: john at arbash-meinel.com-20081023205350-ynduycv3bh5qsup3
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: pack_retry_153786
timestamp: Thu 2008-10-23 16:04:28 -0500
message:
Change the api of reload_pack_names().
I sort of preferred when it returned what changed, but most callers really don't
have any way to do anything with the details. So instead, we just return
whether or not something actually changed.
-------------- next part --------------
=== modified file 'bzrlib/repofmt/pack_repo.py'
--- a/bzrlib/repofmt/pack_repo.py 2008-10-23 20:08:01 +0000
+++ b/bzrlib/repofmt/pack_repo.py 2008-10-23 21:04:28 +0000
@@ -1155,10 +1155,10 @@
# when a pack is being created by this object, the state of that pack.
self._new_pack = None
# aggregated revision index data
- self.revision_index = AggregateIndex()
- self.inventory_index = AggregateIndex()
- self.text_index = AggregateIndex()
- self.signature_index = AggregateIndex()
+ self.revision_index = AggregateIndex(self.reload_pack_names)
+ self.inventory_index = AggregateIndex(self.reload_pack_names)
+ self.text_index = AggregateIndex(self.reload_pack_names)
+ self.signature_index = AggregateIndex(self.reload_pack_names)
def add_pack_to_memory(self, pack):
"""Make a Pack object available to the repository to satisfy queries.
@@ -1677,7 +1677,11 @@
# out the new value.
disk_nodes, _, _ = self._diff_pack_names()
self._packs_at_load = disk_nodes
- return self._syncronize_pack_names_from_disk_nodes(disk_nodes)
+ (removed, added,
+ modified) = self._syncronize_pack_names_from_disk_nodes(disk_nodes)
+ if removed or added or modified:
+ return True
+ return False
def _clear_obsolete_packs(self):
"""Delete everything from the obsolete-packs directory.
=== modified file 'bzrlib/tests/test_repository.py'
--- a/bzrlib/tests/test_repository.py 2008-10-23 19:39:59 +0000
+++ b/bzrlib/tests/test_repository.py 2008-10-23 21:04:28 +0000
@@ -937,11 +937,11 @@
new_name = new_name.pop()
# The old collection hasn't noticed yet
self.assertEqual(names, packs.names())
- # [removed], [added], [modified]
- self.assertEqual(([], [new_name], []), packs.reload_pack_names())
+ self.assertTrue(packs.reload_pack_names())
self.assertEqual(new_names, packs.names())
# And the repository can access the new revision
self.assertEqual({rev3:(rev2,)}, r.get_parent_map([rev3]))
+ self.assertFalse(packs.reload_pack_names())
def test_reload_pack_names_added_and_removed(self):
tree = self.make_branch_and_tree('.')
@@ -960,11 +960,10 @@
new_names = tree.branch.repository._pack_collection.names()
# The other collection hasn't noticed yet
self.assertEqual(names, packs.names())
- removed, added, modified = packs.reload_pack_names()
+ self.assertTrue(packs.reload_pack_names())
self.assertEqual(new_names, packs.names())
- self.assertEqual((names, new_names, []),
- (sorted(removed), sorted(added), sorted(modified)))
self.assertEqual({rev2:(rev1,)}, r.get_parent_map([rev2]))
+ self.assertFalse(packs.reload_pack_names())
class TestPack(TestCaseWithTransport):
More information about the bazaar-commits
mailing list