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)

March, 2008

Posts
  • If broken it is, fix it you should

    .NET Debugging Demos Lab 6:_Memory Leak

    • 3 Comments
    It's been about a week since I posted the debugging challenge for this lab, things have been a bit busy lately so sorry about the tardiness on posting the lab. I have a love-hate relationship with statistics, I like them cause you can use them to get a point across and they can help you analyse things, but at the same time I hate them because people have a tendency to rely on them blindly and use them out of context without understanding the meaning behind them. The classic example is of course the...
  • If broken it is, fix it you should

    .NET Debugging Demos Lab5: Crash - Review

    • 26 Comments
    Since I already posted a challenge for this lab earlier I didn't want to wait too long with publishing the review... Previous demos and setup instructions If you are new to the debugging labs, here you can find information on how to set up the labs as well as links to the previous labs in the series. Information and setup instructions Lab 1: Hang Lab 1: Hang - review Lab 2: Crash Lab 2: Crash - review Lab 3: Memory Lab 3: Memory - review Lab 4: High CPU hang Lab 4: High CPU hang - review...
  • If broken it is, fix it you should

    .NET Debugging Demos Lab 6: Memory Leak - Review

    • 10 Comments
    Since it took me so long to get Lab 6 out the door i'll post the review right away... After this we only have one memory leak lab to go before you have gone through the whole lab set. Previous demos and setup instructions If you are new to the debugging labs, here you can find information on how to set up the labs as well as links to the previous labs in the series. Information and setup instructions Lab 1: Hang Lab 1: Hang - review Lab 2: Crash Lab 2: Crash - review Lab 3: Memory Lab 3: Memory ...
  • If broken it is, fix it you should

    ASP.NET Viewstate error - Validation of viewstate MAC failed

    • 10 Comments
    Last week I was working with on a case where they were getting this error message HttpException (0x80004005): Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster Typically this occurrs if the application is on a webfarm and autogenerate is used as the validation key. This is because if you request a page and click a button for example...
  • If broken it is, fix it you should

    .NET Debugging Demos Lab 7: Memory Leak

    • 3 Comments
    This is the last debugging lab in the .NET Debugging Demos series. By now you should have the basics down for troubleshooting hangs, perf issues, memory leaks and crashes in .net applications. Hope you have enjoyed your debugging sessions. The last one in the series is a managed memory leak caused by holding on to resources in an unexpected way. Since it is the last one I have tried to make the questions a little bit less leading than the previous ones:) Previous demos and setup instructions If you...
  • If broken it is, fix it you should

    .NET Debugging Demos Lab 5: Crash

    • 9 Comments
    Last week I published a debugging challenge for Lab 5. It was really interesting to see the results and I have to say I was really happy to see the excellent results from the poeple who commented on the debugging challenge (sounds like my work here is done:)). Quick Poll, for the next one (a memory leak), do you want a debugging challenge or do you want the lab steps at once? As usual it is using the Buggy Bits site, and this time we are dealing with a crash. You can read the problem description...
  • If broken it is, fix it you should

    .NET Case Study: Stackoverflow Exception when using a complex rowfilter

    • 8 Comments
    When you use very complex Rowfilters or expressions on datasets or datatables you may end up getting a stackoverflow exception. Eber was running into this and posted a comment here. Since it is something we see from time to time and it was a bit to long to answer in the comments, here is the why and the how... Problem description: When browsing an ASP.NET site, intermittently we get "Internet Explorer cannot display the webpage" accompanied by the following event in the eventlog: Event Type: Error...
  • If broken it is, fix it you should

    ASP.NET Case Study: Hang on WaitOne, WaitAny or WaitMultiple

    • 9 Comments
    One of the synchronization methods in .NET is the ResetEvent. It comes in two flavors, the AutoResetEvent which resets itself immediately after it is set, and the ManualResetEvent which as the name suggests you have to manually reset. Lets say you have a team of developers that can implement different parts of an application simultaneously without interaction, then the work order might look something like this Ask Bob to implement X Ask Belinda to implement Y Ask Ben to implement Z Integrate X, Y...
  • If broken it is, fix it you should

    ASP.NET Case Study: Hang with mixed-mode dlls

    • 4 Comments
    If you use mixed mode dlls (assemblies with .net and c++ code) you need to take care to not have any .net entry points so that you don't end up with a GC/LoaderLock deadlock like this one . What is a managed/.net entry point you might ask... it basically means that during the loading of the assembly the assembly may call some .net methods. For example, if you have a dllmain that calls into managed code, or if you have managed constructors for static value types. In esscence, anything that would allow...
  • If broken it is, fix it you should

    .NET Debugging Demos Lab 6: Debugging Challenge (Memory leak)

    • 4 Comments
    Here is the debugging challenge for lab 6... this one is really tricky... I will post the step-by-step instructions and review in about a week, but for now I will only post a problem description. As with lab 5, your mission, should you choose to accept it, is to troubleshoot the problem with only that problem description. Post intermediate findings, questions, potential solutions etc. in the comments, and don't worry if you go down the wrong path a couple of times (that's just part of the debugging...
  • If broken it is, fix it you should

    Welcome to a blog chat on Wednesday about ASP.NET and Debugging

    • 7 Comments
    On Wednesday (April 2nd) me and Tom from the ASP.NET Debugging Blog will co-host a live blog chat on our blogs where you can ask questions about ASP.NET and Debugging with windbg and sos. The chat client will be hosted on our blogs for an hour starting at 10 AM EST (Eastern Standard Time) /4 PM CET (Central European Time) so you can just browse to either http://blogs.msdn.com/Tess or http://blogs.msdn.com/Tom to attend and ask any questions you want about ASP.NET and debugging with windbg and...
Page 1 of 1 (11 items)