[cvsnt] Re: cvs server: connect to localhost(x.x.x):2402 failed: Only one usage of each socket address (protocol/network address/port) is normally permitted
Tony Hoyle
tmh at nodomain.org
Tue May 11 17:35:22 BST 2004
On Tue, 11 May 2004 18:22:21 +0200, "Morten Jøhnk" <no.email at for.me>
wrote:
>Hi Tony and others
>
>After switching the lockserver on, we once in a while get this:
>
>cvs server: connect to localhost(x.x.x):2402 failed: Only one usage of each
>socket address (protocol/network address/port) is normally permitted
>
>cvs [server aborted]: Couldn't connect to lock server
>
>when updating.
>
>Server: CVSNT 2.0.41 on Windows 2003
>Client: CVSNT using SSPI and pserver
>
>Any ideas - what causes this, and how to cure it?
>
Something's exhausting the supply of TCP/IP sockets... it would take
many hundreds (probably thousands) of users for lockserver to do it on
its own, so I'd expect it's contending with something else..
netstat -an should list the current state. CVS uses one for each
incoming connection + one for the listener, and the lockserver does
the same. eg. for 10 users you'd have 22 concurrent sockets. I
believe the limit on Win2K/XP is 3,976 sockets.
Note that because of the TIME_WAIT delay you can end up using quite a
few if you get a lot of clients connecting in quick succession...
although I've never seen that build up very much (CVSNT uses
SO_REUSEADDR anyway).
If you're under a heavily loaded server anyway and can't find any
other cause try increasing the number of available virtual ports by
setting
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\MaxUserPort
Tony
More information about the cvsnt
mailing list