I just had a call from a client with some big problems on their server that
has IIS and SQL Server on it.
Their most used application that interacts directly with SQL Server was
having problems - from many computers and randomly throughout the
application.
I watched the SQL Server profiler and saw rpc requests coming in and
occasionaly that request was not being followed by a BatchCompleted.
Also on that server, things were really slow.
A quick peek in the task manager showed a very bloated ASP.Net worker process
(w3wp.exe). On the first call to a particular webservice, it was flying up from
about 108,000K to over 550,000K.
Restarting that application made the memory drop back down to 108,000 or
so.
I checked everything I could think of and tested each time after I made a
change. Still the worker process was bloating.
Finally, I targetted two little seemingly innocent lines in my web.config.
The flags whcih enable wse2 to trace it's incoming and outgoing messages to xml
files and also policy tracing. These are simple settings in the WSE2 config
tool.
I commented them out and voila - all was well again.
Lesson learned - remember to turn of the darn analysis tools in a live app
when you are not using them.
Crisis averted - phew!
http://www.AcehAid.org