500 Internal Server Errors w/o using CRM perf toolkit

Jul 30, 2008 at 5:16 AM
Edited Jul 30, 2008 at 6:18 AM
Hi MS CRM Product Team,

I work for a Microsoft-Partner Company offering MS Dynamic CRM solutions.

A customer requested a performance load tests after experiencing slow performance on a vanilla MSCRM 4.0. (Mainly on case and contact creation)

A colleague made used of the Microsoft Visual Studio 2005 Team System recording functionality to create 2 tests - Create Account and Create Case (or incident). We weren't aware of this performance toolkit then.

The tests reported "500 Internal Server Errors" for all test iterations even though the accounts and cases got created. Needless to say, these "500 internal server errors" opened a can of worms. The customer wants an explanation on these errors and whether these are the cause of the less than desirable performance.

A paragraph from the support doc,
"Microsoft CRM 4.0 makes substantial use of Web service calls during routine processing. This is a problem working with Microsoft Visual Studio 2005 Team System, which does not natively support load testing with Web service calls. For example, if you use the integrated recording functionality in Microsoft Visual Studio 2005 Team System, the resulting request stream will not contain any Web service calls even though Web service calls most likely occurred during the recording."

Is that the reason for the "500" errors?  I'm not technical enough to understand these fully to offer an explanation. Hence, I would appreciate a simpler explanation from the Product team for me  to get back to my Customer.

After discovering this performance toolkit, I managed to convince my customer the tests conducted (without using the toolkit) by my colleague is flawed and  inconclusive. We plan to conduct another tests using the toolkit. And if I'm right, the test shouldn't report "500" errors,.

BTW, is there a custom test for "Case creation"? I can't seems to be able to locate it.

Thanks for reading and I hope to get some repsonse soon.

Jul 30, 2008 at 5:29 AM
Edited Jul 30, 2008 at 5:32 AM
Test results below (without using the toolkit). I hope to get some insight on the "500" errors. Thanks in advance.

HttpError 500 - InternalServerError 1000 500 - InternalServerError
Exception LoadTestException 221 Could not find dependent counter needed to apply threshold rule: \\H440\LoadTest:Page\Avg. Page Time(_Total)
Exception LoadTestResultsCollectorTimeoutException 2 Exception of type 'Microsoft.VisualStudio.TestTools.WebStress.LoadTestResultsCollectorTimeoutException' was thrown.
Exception LoadTestCounterCategoryNotFoundException 2 The performance counter category 'Network Interface' cannot be accessed on computer 'XXX' (Timed out trying to read performance counter category 'Network Interface' on computer 'XXX') ; check that the category and computer names are correct.
Exception LoadTestErrorLimitExceededException 1 More than 1000 errors of type 'HttpError' and sub type '500 - InternalServerError' have occurred; additional errors of this type will not be reported.

Aug 6, 2008 at 6:53 PM
Hi Kenghua,
 Apologize for the slow response. You are right, Visual Studio Team System does not have good infrastructure to talk to web services. We have developed a work around the toolkit in order to post requests to the webservices in CRM. Kindly use the toolkit and the 500 errors should not occur. The capture and replay mechanism for web services using the Team suite does not work for CRM webservices as far as I know.
Aug 6, 2008 at 6:55 PM
 These are errors you are seeing when your loadtest is trying to get the performance counter information from a remote machine that it is monitoring but it is unable to contact it. These are unrelated to the tests itself and should be fine.
Aug 7, 2008 at 5:16 AM
Hi Adi,

Thanks for the reply. Now I've something to support my assumption.