SERVER-39106 fixed a problem about lock acquisition: When ticket acquisition times out due to _maxLockTimeout, it should throw rather than fail silently with LOCK_TIMEOUT result.
However, the contract of lock acquisition is not very clear right now:
- If the lock acquisition times out due to _maxLockTimeout, it should throw.
- If the lock acquisition times out due to deadline specified by callers, it should silently return LOCK_TIMEOUT
This ticket is to try to simplify the contract so that it always throw an exception.
- is duplicated by
-
SERVER-39092 ReplicationStateTransitionLockGuard should be resilient to exceptions thrown before waitForLockUntil()
- Closed
-
SERVER-39115 GlobalLock can return without throwing when instructed to throw
- Closed