Rev 3056: iter_reverse_revision_history also accesses most of the history. in http://bzr.arbash-meinel.com/branches/bzr/0.93-dev/index_buffer_all
John Arbash Meinel
john at arbash-meinel.com
Fri Nov 30 02:58:32 GMT 2007
At http://bzr.arbash-meinel.com/branches/bzr/0.93-dev/index_buffer_all
------------------------------------------------------------
revno: 3056
revision-id:john at arbash-meinel.com-20071130025747-kytq6jplq6ukl21a
parent: john at arbash-meinel.com-20071130021851-6nbyrsse7oiz4k4o
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: index_buffer_all
timestamp: Thu 2007-11-29 20:57:47 -0600
message:
iter_reverse_revision_history also accesses most of the history.
This changes 'bzr log' time in half (6s => 3s).
modified:
bzrlib/repofmt/pack_repo.py pack_repo.py-20070813041115-gjv5ma7ktfqwsjgn-1
-------------- next part --------------
=== modified file 'bzrlib/repofmt/pack_repo.py'
--- a/bzrlib/repofmt/pack_repo.py 2007-11-30 02:18:51 +0000
+++ b/bzrlib/repofmt/pack_repo.py 2007-11-30 02:57:47 +0000
@@ -1656,6 +1656,15 @@
return super(KnitPackRepository, self).get_revision_graph(
revision_id=revision_id)
+ def iter_reverse_revision_history(self, revision_id):
+ if revision_id in (None, _mod_revision.NULL_REVISION):
+ return
+ self._pack_collection.ensure_loaded()
+ index = self._pack_collection.revision_index.combined_index
+ index.buffer_all()
+ return super(KnitPackRepository, self).iter_reverse_revision_history(
+ revision_id)
+
def _make_parents_provider(self):
return self
More information about the bazaar-commits
mailing list