Production postmortem: The random high CPU

added by DotNetKicks
12/1/2017 3:05:51 PM

2 Kicks, 264 Views

In this case, several threads were caught in this infinite loop. The stack trace also told us where in RavenDB we are doing this, and from there we could confirm that indeed, there is a rare set of circumstances that can cause a timer to fire fast enough that the previous timer didn't have a chance to complete, and both of these timers will modify the same dictionary, causing the issue.