Memory error analysis in distributed applications
Memory bugs can have a disastrous effect on an application's usability. They are hard to track down because a variety of different situations cause them including overwriting the stack, not freeing the heap, or freeing it at the wrong time. It's difficult to trace back to a specific line of code because it can take a long time to manifest. And having to boot everyone off servers periodically and restart doesn't suffice when people rely on these servers. Read this paper to understand the root cause and how to resolve memory bugs.