[cvsnt] CVSNT slow response with multiple users
Tony Hoyle
tony.hoyle at march-hare.com
Thu Jan 31 17:50:54 GMT 2008
jvn76 Van Norman wrote:
> Thank you for your responses.
>
> Connecting to the lock service and performing the Monitor – Locks
> reveals that during these slow times there are multiple locks, and that
> those locks are holding onto the same files for a long period of time.
> Some of the locks have lasted over 1 ½ hours.
No lock should last that long - I'd expect a read lock to be of the
order of a few seconds for a checkout, and a couple of minutes for a
commit (since all the affected files are locked prior to the commit).
Locks die automatically the moment their corresponding cvs.exe goes
away... a lock can't exist independently of that, so it means there's a
process being held up by something.
Unless the lockserver is seen to be taking up large amounts of CPU time
it's not what is causing the slowdown, As you previously mentioned
processor usage at only 5% it is not the issue - the lockserver never
'waits' for anything as it no external resources to wait for - so a low
CPU signifies that only a tiny fraction if time is being caused handling
lock contention.
A low CPU/disk IO/etc. and slow response normally means that the system
is blocked waiting for some resource... either disk, memory (swap) or
network. If you can track down what it is waiting for you might have a
chance to find out what is causing it. Since many Antivirus scans work
at the driver level they can be a nightmare to detect which is why it's
recommended to remove them for testing.
Some other things to try:
1. Copy a largeish file from that machine to another over a network
share, and look at the speed you're getting over the network.
2. Run wireshark when cvs is running - you should be able to tell
whether it's spending most of its time waiting for a reply from the
client or whether the client is waiting for the server.
> Can CVS operate without the Lock Service? If it can, what are the
> ramifications of this?
No.
> Our security team does not want us even testing with Antivirus fully
> removed from the server. What antivirus software interferes with CVSNT
> the least?
I know that Norton is typically the worst, and Nod32 has a habit of
breaking the communication with the clients. I've worked with both AVG
and Avast in the past and they seem OK (provided you disable the
on-access scanning or at least limit it to .exe files only). Arthur
runs McAfee but I'm not sure he runs it when testing or only on specific
machines.
Tony
More information about the cvsnt
mailing list