Bazaar NG network usage

John A Meinel john at arbash-meinel.com
Thu Jun 23 15:46:53 BST 2005


Nathan Bullock wrote:

>I have been trying to figure out what the network
>usage of something like bazaar ng is.
>
>For example subversion is able to communicate between
>the server and client by using diffs of the files,
>which allows a fairly compact amount of traffic.
>
>Can bazaar ng do that today? If not will it ever be
>able to do that? Since Bazaar NG doesn't use a
>client-server model I suppose it always has to send
>complete files over the network. Is this correct or am
>I mistaken?
>
>Or does it use some algorithm like rsync to reduce the
>network bandwidth?
>
>Nathan Bullock
>
>

At present, the storage layout of the "repository"[*] holds complete
files. So each commit adds a new gzipped version of the whole text. When
doing a branch or pull, it has to pull each entry.
However, there is a newer repository format which stores the delta
between the previous revision and the current one. This could naturally
reduce the network usage.

But honestly, bzr is also considering using a smart server (just another
bzr process) on the other side. So it would use something like ssh to
communicate.
The back end is constantly being revised, since this is a development
prototype. We are currently looking into how to provide a nice
asynchronous pipelined access layer, to help simple remote access.

But it one sense, bzr will always use more bandwidth than svn for a
get/update request, because it does store the complete history locally.
However, all other commands use far less bandwidth, because they don't
need to touch the remote repository at all.

Also, there is planned support to have some sort of central library of
texts, so that if you go to download something, you will probably only
have to download it once.

The details remain to be worked out. But the nicest piece is that bzr
supports disconnected operation, so even if a couple commands are slower
while talking to the remote machine, the rest of the commands should be
much faster.


[*] the "repository" is actually in the working directory. I just use it
to say where all the revisions are kept.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 253 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20050623/4a05e35e/attachment.pgp 


More information about the bazaar mailing list