This video is the second in a two-part video on investigating a GC memory 'leak'. This video discusses a real world memory leak that was found and corrected in PerfView itself. If you have not watched part one, you should do so now. This second part assumes that we have taken two heap snapshots and now wish to investigate the differences between the two snapshots. We show how to do a diff, and explain the theory (negating the sample of the baseline), and how trivial it is to find what 'path of referneces' are keeping the objects alive.
Armed with this information we disover that some of growth is 'by design' (it is part of a useful cache), however some of the growh is an unfortunate side effect of other caching. We discuss how we fixed this problem and then validated that the fix actually worked.