|
As part of SERVER-3067, foreground index builds were made interruptable, but only for user-initiated builds. System-initiated builds were not made interruptable, because we suspected that the code was not prepared to gracefully handle this type of failure. We determined whether an operation was from a user by looking at whether the CurOp was nested or not. Nesting occurs when a DBDirectClient is in use.
When we added support for Write Commands, the support also utilized this wrapping ability of CurOp. This may not be aggregating the correct operation stats, in addition to breaking index build interruptibility.
Tests forthcoming.
|