Hi friends,
We are running BizTalk 2004 Standard Edition on Windows Server 2003 sp 2, in a three-server configuration (Web-Server, BizTalk Server, and Database server)
A BizTalk 2004 Orchestration receives an XML file.
This Orchestration invokes an assembly method 10 times in parallel with different parameters. <o:p></o:p>
This assembly method will invoke a Web Service on the Web-Server to fetch data.<o:p></o:p>
When we send a single XML file at a time then the web service invocation works fine.
If we send multiple xml files (more than 2) at a time then the BizTalk throws the following error during web service invocation.
“System.InvalidOperationException: There were not enough free threads in the ThreadPool object to complete the operation”
We have tried the following to fix this issue but didn’t succeed:
Machine.Config changes
Set the values of the maxWorkerThreads parameter and the maxIoThreads parameter to 100. Set the value of the maxconnection parameter to 12*N (where N is the number of CPUs that you have). Set the values of the minFreeThreads parameter to 88*N and the minLocalRequestFreeThreads parameter to76*N. Set the value of minWorkerThreads to 50. Remember, minWorkerThreads is not in the configuration file by default. We add it.
Add a DWORD for "MaxWorkerThreadsPerProcessor" in HKLM\Software\Microsoft\BizTalk Server\3.0\Administration with the value “100”
Catch the Exception in code and implement Retry logic.
Pls. let me know whether there is any solution/workaround available for this issue
Thanks
Kathir
HCL Tech