Re: Dead Zune Club
John Elliot <[email protected]> Wed, 12 Oct 2011 16:03:58 +1100
| Newsgroups | gmane.comp.windows.off-topic |
|---|---|
| Message-ID | <[email protected]> |
On 12/10/2011 3:52 PM, Shawn Wildermuth wrote:
> SQL Profiler is where I'd start.
Yeah, that's kinda what I figured too. Thanks for confirming.
The trouble with the profiler is that I'm going to get back "the
phonebook" when I run it. I did actually run the profiler for an hour or
so a few months back just to see what I could see and there was *heaps*
of database activity and I'm not exactly sure what I should be looking
for. (Note: I don't believe that what I call "heaps" of database
activity translated into high CPU/Memory utilisation, I think the load
in those terms was low (but I wasn't being very scientific in my
observations). It's just "heaps" in the sense that it takes a really
long time to wade through it all.)
One thing I'd really like to be able to detect is when clients are not
using a connection pool. One thing I've found in some of the source code
is that the previous developers somehow got it in mind that this was a
good idea:
sqlConn.Close();
sqlConn.Dispose();
SqlConnection.ClearPool( sqlConn );
I really don't know why they are blowing away the connection in the
connection pool when they close their connections, but they seem to do
this just about everywhere. I'm hoping that establishing all these "new"
connections is what's causing SQL Server to respond slowly and timeout,
because fixing that is something that's tractable. I'll just need to
review all the code I can get my hands on and fix it so that it uses the
connection pool.
Is there an easy way to determine how many connections are being
established with the SQL Server? I'm not even sure what I would be
looking for in the profiler logs to discover this manually.