While pumping lots of records / docs / bulk inserts to the new CouchDB Server I got a mysterious connection timeout that appeared always after about 4000+ inserted records.
By using cfhttp.errorDetail
I got the error:
I/O Exception: Address already in use: connect
To save you some time here is what I found.
Starting with Windows 2003 Microsoft reduced the amount of connections to user ports. I did not check it but it seems that it will be the same behaviour in Windows 2008 and Vista. Here’s what Microsofts KB196271 says:
Start Registry Editor.
Locate the following subkey in the registry, and then click Parameters:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
On the Edit menu, click New, and then add the following registry entry:
Value Name: MaxUserPort
Value Type: DWORD
Value data: 65534
Valid Range: 5000-65534 (decimal)
Default: 0x1388 (5000 decimal)
Description: This parameter controls the maximum port number that is used when a program requests any available user port from the system. Typically, ephemeral (short-lived) ports are allocated between the values of 1024 and 5000 inclusive. After the release of security bulletin MS08-037, the behavior of Windows Server 2003 was changed to more closely match that of Windows Server 2008 and Windows Vista. For more information about Microsoft security bulletin MS08-037, click the following article numbers to view the articles in the Microsoft Knowledge Base:KB951746: Description of the security update for DNS in Windows Server 2008, in Windows Server 2003, and in Windows 2000 Server (DNS server-side): July 8, 2008
KB951748: Description of the security update for DNS in Windows Server 2003, in Windows XP, and in Windows 2000 Server (client side): July 8, 2008
KB953230: Vulnerabilities in DNS could allow spoofing Exit Registry Editor, and then restart the computer.
OK, now relax.