~bzr-pqm/bzr/bzr.dev

[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
Filename Latest Rev Last Changed Committer Comment Size
..
bzrlib 1185.1.29 19 years ago Robert Collins merge merge tweaks from aaron, which includes late Diff
contrib 1185.1.29 19 years ago Robert Collins merge merge tweaks from aaron, which includes late Diff
doc 1185.1.29 19 years ago Robert Collins merge merge tweaks from aaron, which includes late Diff
notes 1185.1.29 19 years ago Robert Collins merge merge tweaks from aaron, which includes late Diff
patches 1185.1.29 19 years ago Robert Collins merge merge tweaks from aaron, which includes late Diff
tools 1185.1.29 19 years ago Robert Collins merge merge tweaks from aaron, which includes late Diff
.bzrignore 1185.33.53 19 years ago Martin Pool Don't ignore bzrlib/plugins -- really bad idea bec 190 bytes Diff Download File
.rsyncexclude 1185.33.36 19 years ago Martin Pool Exclude more files from dumb-rsync upload 203 bytes Diff Download File
build-api 1185.33.32 19 years ago Martin Pool [merge] fix \t in commit messages 100 bytes Diff Download File
File bzr 1185.35.13 19 years ago Aaron Bentley Merged Martin 2.3 KB Diff Download File
bzr_man.py 1185.29.2 19 years ago Wouter van Heyst Kill the python reinvocation, it doesn't work for 6.8 KB Diff Download File
HACKING 1185.33.48 19 years ago Martin Pool Hacking notes on TDD 8.6 KB Diff Download File
INSTALL 1185.16.80 19 years ago Martin Pool Update news and readme - better explanation of de 437 bytes Diff Download File
Makefile 1185.33.49 19 years ago Martin Pool [merge] basic_io metaformat (mbp) 269 bytes Diff Download File
NEWS 1185.33.55 19 years ago Martin Pool [patch] weave fetch optimizations (Goffredo Baronc 33.2 KB Diff Download File
NEWS.developers 1185.16.35 19 years ago Martin Pool - stub for revision properties 910 bytes Diff Download File
README 1185.33.32 19 years ago Martin Pool [merge] fix \t in commit messages 808 bytes Diff Download File
File setup.py 1185.41.1 19 years ago Robey Pointer make sftp put faster when using paramiko 1.5.1 2.9 KB Diff Download File
TODO 1185.33.40 19 years ago Martin Pool [merge] jelmer 15.4 KB Diff Download File
tutorial.txt 1185.33.32 19 years ago Martin Pool [merge] fix \t in commit messages 9.9 KB Diff Download File