samba performance with svn?

144 views
Skip to first unread message

Les Mikesell

unread,
Sep 24, 2013, 12:43:35 PM9/24/13
to Subversion
I think this has been discussed here previously but I don't remember
any definitive conclusions so I'll ask again. We now have some
Windows users with samba-mounted disk space and large svn checkouts
and commits are very slow compared to local disk access. Are there
any samba server settings that would be likely to help with the speed?

--
Les Mikesell
lesmi...@gmail.com

Stefan Sperling

unread,
Sep 24, 2013, 12:55:47 PM9/24/13
to Les Mikesell, Subversion
The new-in-1.8 exclusive-locking option in ~/.subversion/config
can help performance on network filesystems (see below).

I would recommend against using samba for working copy storage though,
see http://sqlite.org/faq.html#q5 which calls out some issues with
Windows network filesystems. I don't know if these apply equally to
samba but I wouldn't rule that out.

[[[
### Section for configuring working copies.
[working-copy]
### Set to a list of the names of specific clients that should use
### exclusive SQLite locking of working copies. This increases the
### performance of the client but prevents concurrent access by
### other clients. Third-party clients may also support this
### option.
### Possible values:
### svn (the command line client)
# exclusive-locking-clients =
### Set to true to enable exclusive SQLite locking of working
### copies by all clients using the 1.8 APIs. Enabling this may
### cause some clients to fail to work properly. This does not have
### to be set for exclusive-locking-clients to work.
# exclusive-locking = false
]]]

Nico Kadel-Garcia

unread,
Sep 25, 2013, 12:21:14 AM9/25/13
to Les Mikesell, Subversion
A large improvement occurred for Subversion on  CIFS in a following Subversion release, I believe as a performance enhancement to Subversion 1.6.x, I don't remember which release. I'd expect CIFS to remain slower than NFS: it's a very chatty protocol.

Tuning Samba for performance can be..... an art form. I've personally found TCP_NODELAY to be helpful. I'd actually avoid CIFS and use NFS where feasible, which modern Windows releases support well, If you *have* to use Samba, and want a recent release for RHEL 6 compatible operating systems, I publish tools for building Samba 4.x releases over at https://github.com/nkadel/samba-4.0.7-srpm/ .
Reply all
Reply to author
Forward
0 new messages