Saturday, April 24, 2010

Only one usage of each socket address (protocol/ network address/ port) is normally permitted

A few weeks ago, we faced above issue while we were conducting stress test operations on one of our xRM application modules. The program read data from various CRM entities (estimated about 7+) through MS CRM sdk and wrote 7,000 plus records into a text file based on predefined file format. We used File Helper 2.0 for our file generation.

One of our colleagues suggested to reduce client TCP/IP socket connection timeout value in CRM application server's registry and it worked fine. Below is the steps we have to follow:
  1. Browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  2. Create/Update DWORD values MaxUserPort and enter a decimal value between 5000 and 65534
  3. Create/Update DWORD value TcpTimedWaitDelay and enter a decimal value between 30 and 300
This happened because when a client initiates a TCP/IP socket connection to a server, the client typically connects to a specific port on the server and requests that the server respond to the client over TCP or UDP port. Under certain conditions it is possible that the available ports in the default range will be exhausted. Please review below reference link for more information.


0x80048428: The duplicate detection rule is currently being used and cannot be updated or deleted. Please try again later.

Last week, my colleague tried to unpublished a duplicate detection rule in CRM and received following error message: "The duplicate detection rule is currently being used and cannot  be updated or deleted. Please try again later."

After searching through google for a while, I found out a very useful post from MS CRM forum. It is stated that there may be a pending task in CRM system job which is associated to that duplicate detection rule and needed to be canceled. After following this instruction, I managed to unpublish that duplicate detection rule from MS CRM.