Sign In
If broken it is, fix it you should
Using the powers of the debugger to solve the problems of the world - and a bag of chips by Tess Ferrandez, ASP.NET Escalation Engineer (Microsoft)
Tess Ferrandez
I work as as an Escalation Engineer in the ASP.NET developer support team at Microsoft.
My job is to help developers fix problems (memory leaks, hangs, crashes etc.) in their applications, using troubleshooting tools like debuggers and profilers.
In this blog I share tips and tricks for troubleshooting those issues, along with random tidbits about computing and my life at MS.
If you are new here, start with:
My debugging labs (Buggy Bits)
My Silverlight labs (building a game)
Thanks for visiting my blog
@TessFerrandez
Options
About
Email Blog Author
RSS for posts
Atom
RSS for comments
OK
Search this blog
Advanced search options...
Search In:
Everything
Blogs
Forums
People
Groups
Places
Pages
Date range:
All Time
Last Year
Last 6 Months
Last 3 Months
Last Month
Last Week
Last Two Days
Tags
ASP.NET
Crash scenarios
Debugging
Debugging Labs
General debugging tidbits
Kinect SDK
Memory issues
Pages
Performance issues and hangs
presentation
Silverlight
SOSEX
Archive
Archives
August 2011
(3)
May 2011
(1)
December 2010
(1)
November 2010
(1)
September 2010
(3)
August 2010
(2)
June 2010
(1)
May 2010
(1)
April 2010
(3)
March 2010
(4)
February 2010
(2)
January 2010
(2)
December 2009
(2)
November 2009
(2)
October 2009
(4)
September 2009
(4)
August 2009
(2)
July 2009
(1)
June 2009
(3)
May 2009
(3)
April 2009
(5)
March 2009
(9)
February 2009
(2)
January 2009
(6)
November 2008
(8)
October 2008
(7)
September 2008
(7)
August 2008
(5)
July 2008
(1)
June 2008
(7)
May 2008
(12)
April 2008
(14)
March 2008
(12)
February 2008
(17)
January 2008
(5)
December 2007
(2)
November 2007
(1)
October 2007
(8)
September 2007
(3)
August 2007
(7)
June 2007
(5)
May 2007
(1)
April 2007
(5)
March 2007
(4)
January 2007
(1)
December 2006
(1)
November 2006
(2)
October 2006
(4)
September 2006
(3)
August 2006
(3)
June 2006
(1)
May 2006
(1)
April 2006
(5)
March 2006
(2)
February 2006
(8)
January 2006
(7)
December 2005
(3)
November 2005
(6)
November, 2005
MSDN Blogs
>
If broken it is, fix it you should
>
November, 2005
Posts
Subscribe via RSS
Sort by:
Most Recent
|
Most Views
|
Most Comments
Excerpt View
|
Full Post View
If broken it is, fix it you should
Are you aware that you have thrown over 40,000 exceptions in the last 3 hours?
Posted
over 7 years ago
by
Tess1
50
Comments
This may seem like a preposterous statement, but unfortunately it’s all too common. In my work I go through a lot of dumps, somewhere in the neighborhood of 5-20 in a day:) Since the information is readily available to me, I usually do a quick check for the number of exceptions that the application has thrown and what types of exceptions they are so I can make the customers aware. More often than not, the applications are throwing a lot more exceptions than the developers expected, or they were...
If broken it is, fix it you should
What on earth caused my process to crash?
Posted
over 7 years ago
by
Tess1
10
Comments
So you got a 1000 w3wp.exe stopped unexpectedly in the eventviewer or your process just exited in some weird undefined way and you don't know why. When a process crashes or exits a special event will be fired called EPR (Exit PRocess) so with a debugger like windbg.exe we can attach to the process, wait for epr to be thrown and take a memory dump. When you install the debugging tools for windows you get a vbs script called adplus ( http://support.microsoft.com/default.aspx?scid=kb;en-us;286350...
If broken it is, fix it you should
!dumpheap –stat explained… (debugging .net leaks)
Posted
over 7 years ago
by
Tess1
15
Comments
The most powerful command when debugging a managed memory leak is by far !dumpheap. It will show you all the objects on the managed heaps and using the different switches of !dumpheap you can display the output in virtually any way you want. !dumpheap is a function of the sos.dll extension that comes with the framework installation (in the framework directory) and if you have the SDK installed you can find some basic help for it’s usage in C:\Program Files\Microsoft Visual Studio .NET 2003...
If broken it is, fix it you should
I have a memory leak!!! What do i do? (defining the "where")
Posted
over 7 years ago
by
Tess1
17
Comments
Not that it matters a tremendous lot but just because it is a big pet-peeve of mine I want to differentiate between a real memory-leak and high memory usage. A memory leak is when you used some memory and lost the pointer to the allocation so you can no longer de-allocate that memory. If you still have a pointer to it, you have high-memory usage, which might be just as bad in terms of what happens to the process but still different J Just to make things simple I’ll use the term memory leak for both...
If broken it is, fix it you should
Who is this OutOfMemory guy and why does he make my process crash when I have plenty of memory left?
Posted
over 7 years ago
by
Tess1
11
Comments
To answer this question, there are a few concepts we need to discuss. Working on a 32-bit system, you can address 4 GB of memory, out of this 2 GB is typically reserved to the Operating System and 2 GB are allowed for each user mode process, such as w3wp.exe (asp.net) for example. This memory is called virtual memory and the 2 GB’s are 2GB independently of how much RAM you have added to the system. The amount of RAM simply decides how much paging and swapping you will do, i.e. how fast memory access...
If broken it is, fix it you should
Why I love the debugger...
Posted
over 7 years ago
by
Tess1
29
Comments
10 years ago, still in college, I started working for a company developing real-time systems for trains in Motorola HC11 assembly. Although very interesting and challenging it was a relief to later move on to some more high-level languages, but in the end, no matter how high-level the programming language you work in, everything comes down to machine instructions and ones and zeros. There is just a bunch of stuff between you and the nitty-gritty that normally you might think you don't need to care...
Page 1 of 1 (6 items)