Martin Pool mbp at sourcefrog.net
Sun Nov 27 21:10:39 CST 2005


------------------------------------------------------------
revno: 1445
revision-id: mbp at sourcefrog.net-20051128031030-3d7262bf039ec1ec
parent: mbp at sourcefrog.net-20051125062856-e4c887417108fd9e
committer: Martin Pool <mbp at sourcefrog.net>
branch nick: bzr.dev
timestamp: Mon 2005-11-28 14:10:30 +1100
message:
  [patch] weave fetch optimizations (Goffredo Baroncelli)
  
  The patch adds 2 optimizations:
  
  1) The patch add a hash ( file_ids_names ) which caches the revision
  contained in a weave already  processed, so it isn't needed to reload the
  weave in order to check if a revision is present.
  
  2) Moreover if it is required to merge a remote weave without a correspondent
  weave in the local branch, the merge phase is skipped and the remote weave is
  copied into the repository without other action.
  
  The test below highlights a gain of 3x of user time, against a repository with
  a history of 2548 revisions and 350 files. The repository is in the same machine,
   which is a Duron 700MHz w/ 384MB of ram.
  
  $ # w/ patch
  $ time bzr branch http://kreijack.homelinux.net:8077/bazaar/hgweb_devel/
  Branched 1279 revision(s).
  
  real    59m9.511s
  user    40m14.090s
  sys     1m57.430s
  
  $ # w/o patch
  $ time bzr branch http://kreijack.homelinux.net:8077/bazaar/hgweb_devel/
  Branched 1279 revision(s).
  
  real    147m34.191s
  user    122m10.273s
  sys     5m43.247s
  
modified:
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/fetch.py                fetch.py-20050818234941-26fea6105696365d



More information about the bazaar-commits mailing list