diff options
author | Tess Avitabile <tess.avitabile@mongodb.com> | 2018-05-18 15:46:09 -0400 |
---|---|---|
committer | Tess Avitabile <tess.avitabile@mongodb.com> | 2018-05-18 17:04:36 -0400 |
commit | 6ab1592260c9b21d802aa65a11d268c0a97b11a7 (patch) | |
tree | c0bf5ec600ebd81bcd71ca2fd4c99ba3fdfa5921 /src/mongo/db/concurrency | |
parent | 59239fadc01de57490a56990ee125a1ea44fb126 (diff) | |
download | mongo-6ab1592260c9b21d802aa65a11d268c0a97b11a7.tar.gz |
SERVER-34726 Lock acquisitions for profiling in transaction have 0 second timeout
Diffstat (limited to 'src/mongo/db/concurrency')
-rw-r--r-- | src/mongo/db/concurrency/lock_state.h | 4 | ||||
-rw-r--r-- | src/mongo/db/concurrency/locker.h | 5 | ||||
-rw-r--r-- | src/mongo/db/concurrency/locker_noop.h | 4 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/mongo/db/concurrency/lock_state.h b/src/mongo/db/concurrency/lock_state.h index 7a5d68e6ebf..0cf5081fb6b 100644 --- a/src/mongo/db/concurrency/lock_state.h +++ b/src/mongo/db/concurrency/lock_state.h @@ -122,6 +122,10 @@ public: _maxLockTimeout = maxTimeout; } + bool hasMaxLockTimeout() override { + return static_cast<bool>(_maxLockTimeout); + } + void unsetMaxLockTimeout() override { _maxLockTimeout = boost::none; } diff --git a/src/mongo/db/concurrency/locker.h b/src/mongo/db/concurrency/locker.h index ad39397979b..8310fc866e4 100644 --- a/src/mongo/db/concurrency/locker.h +++ b/src/mongo/db/concurrency/locker.h @@ -124,6 +124,11 @@ public: virtual void setMaxLockTimeout(Milliseconds maxTimeout) = 0; /** + * Returns whether this Locker has a maximum lock timeout set. + */ + virtual bool hasMaxLockTimeout() = 0; + + /** * Clears the max lock timeout override set by setMaxLockTimeout() above. */ virtual void unsetMaxLockTimeout() = 0; diff --git a/src/mongo/db/concurrency/locker_noop.h b/src/mongo/db/concurrency/locker_noop.h index 530a9cd6263..590489f255f 100644 --- a/src/mongo/db/concurrency/locker_noop.h +++ b/src/mongo/db/concurrency/locker_noop.h @@ -73,6 +73,10 @@ public: MONGO_UNREACHABLE; } + bool hasMaxLockTimeout() override { + MONGO_UNREACHABLE; + } + void unsetMaxLockTimeout() override { MONGO_UNREACHABLE; } |