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)

Browse by Tags

Tagged Content List
  • Blog Post: Reader email: Need help troubleshooting perf/memory issues

    I get several emails every day (through the blog) with urgent requests to help troubleshoot memory issues or memory related performance issues. Some just say “we have a memory issue, how do I troubleshoot it?” and others are far far more detailed with links to dumps and everything:) I...
  • Blog Post: .NET Memory Leak: XslCompiledTransform and “leaked” dynamic assemblies

    I have written before about high memory usage caused by improper usage of XmlSerializer objects both in a case study and in a debugging lab .  The problem there was that every time you create a new XmlSerializer object with a non-default constructor, you generate a new dynamic assembly that contains...
  • Blog Post: IIS and PAE

    I recently got a question by one of my customers about PAE and IIS that I thought I’d share the answer to. Their environment looked something like this: 32bit OS (Windows 2003) IIS 6 with multiple application pools, where each app pool hosts a number of applications ~20 GB RAM They...
  • Blog Post: Tool for generating DGML graphs showing why your object can’t be collected (VisualGCRoot)

    Visual Studio.NET 2010 has a new feature that allows you to create nice directed graphs with a markup language called DGML (Directed Graph Markup Language).  Visualizing object graphs with DGML Chris Lovett wrote a tool that takes GCRoot output and transforms it to a DGML document so that you can...
  • Blog Post: Debugging Native memory leaks with Debug Diag 1.1

    I often get questions about debugging native memory leaks. In other words, cases where you have high memory usage in your application but you can see that .net memory usage is not all that high. Recently I was helping out on such a case and this post details both generally how you go about troubleshooting...
  • Blog Post: Debug Diag: mscorwks.dll is responsible for 372.46 MBytes worth of outstanding allocations

    I got an email today on an issue that I think is pretty common when you try to memory leak analysis on a dump with debug diag . They had set up a leak rule in debug diag to monitor for leaks and then ran the memory analysis on it to see what was leaking and the results looked something like this:  ...
  • Blog Post: Finding memory leaks with ANTS Memory Profiler

    I was out looking for some sample scripts for tinyget and ran across this ANTS Memory Profiler review where Scott Seely has tested it out on some of my debugging labs . I haven’t had the time and/or opportunity to test it out myself but since many people have asked me if I had used it or what I thought...
  • Blog Post: First step in troubleshooting complex issues: Define and scope your issue properly

    Is it a plane, is it a bird, is it a UFO? Before you can delve into any kind of troubleshooting of an issue you need to thoroughly define it.  If you don’t you’ll probably end up spending a lot of time randomly gathering and looking at data that is probably not even relevant to the issue at hand...
  • Blog Post: Why do I see ExecutionEngineException, StackOverflowException and OutOfMemoryException on the heap when debugging .net applications?

    I came back from a long vacation today and I’ve finally caught up with enough emails to do something useful with my day. As I scanned through my blog email bucket I noticed that I had a lot of emails relating to my last post on dumping .net exceptions in windbg , and most of them asked why they see OutOfMemoryExceptions...
  • Blog Post: Background Garbage Collection in CLR 4.0

    Yesterday I found this really nice Channel 9 interview with Maoni Stephens (Dev Owner of the CLR GC) and Andrew Pardoe (Program manager for the CLR GC) where they talked about the new Background GC in CLR 4.0. She also talks about it here and there is not much value in me repeating what she already...
  • Blog Post: Debug Diag script for troubleshooting .NET 2.0 Memory leaks

    I have put together a quick and dirty debug diag script for troubleshooting .net memory leaks. (attached to this post) The reason I put it together was mainly to show how you can create your own debug diag scripts but feel free to use it to troubleshoot memory leaks, knowing that it does string parsing...
  • Blog Post: Show me the memory: Tool for visualizing virtual memory usage and GC heap usage.

    A colleague of mine, John Allen, created an awesome tool way back that displays memory usage in a process very nicely. I use screenshots from it from time to time in presentations or posts but unfortunately that tool is not publicly available. Since lots of people have asked me about it I figured...
  • Blog Post: Developers are from Mars, Ops people are from Venus… or It looked good on paper

    A few weeks back me and Micke (one of our Architect Evangelists) had a session at TechDays where we talked about “things that looked good on paper” i.e. things that sound pretty ok in the design/development phase but sometimes turn out to be a disaster in production. We are both pretty passionate about...
  • Blog Post: .NET Rocks: Debugging chat

    Yesterday I had a nice chat with Richard and Carl at .NET Rocks . We talked about .net, debugging, memory issues and a bunch of other stuff, and in the end I got a pop quiz that I failed:) See if you can figure out what caused the outage on their servers… The show will be uploaded here some time today...
  • Blog Post: .NET Memory Leak reader email: Are you really “leaking” .net memory

    I get several emails every week through the blog asking for help on various issues.  Unfortunately due to time constraints I can’t really look at them all on an individual bases but I thought this particular request might be interesting to share. The problem description was “One of our w3wp.exe...
  • Blog Post: .NET Memory Leak: To dispose or not to dispose, that’s the 1 GB question

    I was looking at a memory dump recently for an issue where the process would grow to over 1 GB and return OutOfMemory Exceptions. Debugging the issue: A full user dump of the w3wp.exe process was taken with debug diag 1.1 when memory was really high. If you are reading this and have no clue what debug...
  • Blog Post: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg

    My TechEd presentation “Common Issues in ASP.NET and how to debug them with Windbg” is now up on channel 9, so if you want to watch it, here you go http://channel9.msdn.com/posts/MSDNSweden/Vanliga-fel-som-grs-med-ASPNET-och-hur-du-hittar-dem-med-WinDbg/ Have fun, Tess
  • Blog Post: Debugging memory leaks in Compact Framework / Windows CE applications

    This is way out of the scope of what I normally troubleshoot, but I have gotten some questions around this and I just wanted to point out a really good resource (By Raffaele Limosani), for troubleshooting memory leaks in these kind of applications. http://blogs.msdn.com/raffael/archive/2008/02/21/netcf...
  • Blog Post: Slides for interactive TechEd Sessions about debugging .net issues in windbg

    ... and here are the slides for the interactive session
  • Blog Post: Slides and resources for TechED presentations about debugging .NET issues with Windbg

    I still have to figure out a way to host the video from the break-out session but until then, here are the slides for my presentations (attached). And here are a list of some of the tools and resources I used for the presentations Tool/Resource Comment Download Link Debugging...
  • Blog Post: Using VSTS Test and Profilers to troubleshoot a High CPU in GC issue

    Following my post about how to troubleshoot a low CPU performance issue with VSTS Test, I will now do the same for lab 4 where we have high CPU in GC. The scenario is pretty similar in that we have a page ( http://localhost/BuggyBits/AllProducts.aspx ) that seems to be taking a lot of time to execute...
  • Blog Post: Q&A Reader emails about .NET memory leaks and random questions

    Here are of some of the reader emails I got this week and my answers to them... How do I troubleshoot this memory leak Debugging techniques for capturing stacks of OOMS Do you have a list of Debugging 101 links? Debugging managed code in IE Getting to dependency properties with sos let me know if this...
  • Blog Post: ASP.NET Memory Issues - High Memory Usage with AjaxPro (fixed in current version)

    I was helping a colleague out with an OOM (OutOfMemory) situation he was dealing with. Problem description: Their applications memory usage would grow over time until they finally ended up with an out of memory exception. First debug: They had gotten a memory dump when memory usage was really...
  • Blog Post: ASP.NET Memory - Identifying pages with high Viewstate

    From time to time we get issues with high memory and performance issues due to massive viewstate. I have talked about it before here , but I thought I'd show some techniques for finding out which pages have high viewstate. If you look at a memroy dump of your process in windbg and notice that your large...
  • Blog Post: OutOfMemoryExceptions while remoting very large datasets

    When you have to pass an object back and forth between processes or application domains you have to serialize it into some type of stream that can be understood by both the client and the server.   The more complex and big the object gets the more expensive it is to serialize, both CPU wise...
Page 1 of 3 (70 items) 123