[SERVER-15999] checkForInterrupt() argument "heedMutex" should be removed Created: 06/Nov/14 Updated: 10/Dec/14 Resolved: 14/Nov/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Concurrency |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | J Rassi | Assignee: | Eric Milkie |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Description |
|
The execution of OperationContext::checkForInterrupt() is currently independent of whether true or false is passed for the "heedMutex" argument ("heedMutex" is only observed if Client::hasWrittenSinceCheckPoint() is true, but it is never true since Client::writeHappened() is no longer called). The "heedMutex" argument should be removed. It used to be the case that "heedMutex" controlled whether or not an operation was interruptible after its first write; since writes could not be rolled back, it was important to forbid interrupting partially-completed writes. Now that writes always happen in rollback-enabled containers (WriteUnitOfWork), it should always be safe to interrupt writes. |
| Comments |
| Comment by J Rassi [ 14/Nov/14 ] |
|
Addressed in <https://github.com/mongodb/mongo/commit/284f942a45b877f0baecd19cbf17fc2a4e246a79>. Resolving as dup of |