bzr-svn/bzr-git, Linux and NFS

Russel Winder russel.winder at concertant.com
Mon Sep 14 08:56:31 BST 2009


Just in case anyone else comes across this as a problem:

When using bzr-svn or bzr-git to access a Subversion repository or Git
repository respectively using Bazaar, and you are using Linux, and you
have the Bazaar branches or you have your home directory (i.e.
~/.bazaar) on an NFS mount then you can expect performance to be worse
than truly appalling.

The work around is to do all Bazaar actions directly on the server so as
to cut NFS out of the equation -- really, really irritating, but
necessary.

The background to this is that bzr-svn and bzr-git both make use of TDB.
TDB makes use of mmap and it appears to be a known fact that Linux has
extremely serious performance problems with mmap over NFS mounted
filestores. 

As you might have guessed I have been having email exchanges with Jelmer
about this, but there seems no sane way of avoiding the problem in
Bazaar.  TDB seems to be the right tool for bzr-svn and bzr-git to be
using, and everything else is outside of control.  Workflow workarounds
appear to be the only way of avoiding problems -- and very serious they
are too:  an update that takes a few seconds without NFS can take many
hours using NFS.

So given the "standard model" of shared repository with a checkout
mirror branch and feature branches, the trick is never to do any action
involving the mirror from the feature branch (which is what I used to do
with push), always do any action involving the mirror from the mirror
and always on the machine with the filestore directly mounted, i.e. no
NFS.  Then performance is fine.

-- 
Russel.
=============================================================================
Dr Russel Winder      Partner
                                            xmpp: russel at russel.org.uk
Concertant LLP        t: +44 20 7585 2200, +44 20 7193 9203
41 Buckmaster Road,   f: +44 8700 516 084   voip: sip:russel.winder at ekiga.net
London SW11 1EN, UK   m: +44 7770 465 077   skype: russel_winder
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20090914/7182241a/attachment-0002.pgp 


More information about the bazaar mailing list