diff options
author | Mindaugas Malinauskas <mindaugas.malinauskas@mongodb.com> | 2022-11-24 15:05:08 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-11-30 13:11:40 +0000 |
commit | e62af19b574822b1f0b379b4b6e0653765f7f765 (patch) | |
tree | 2a8ad898aa8b39e98092f5d85c81593260cf0741 | |
parent | e7b8e61a29c8152fe916b8ce7339f7767ac538e8 (diff) | |
download | mongo-e62af19b574822b1f0b379b4b6e0653765f7f765.tar.gz |
SERVER-71568 Fix race condition related to access to ChangeStreamOptions
(cherry picked from commit 92d8c8e3aaf9b4914db3b9fd4a10ef3bb9595f07)
-rw-r--r-- | src/mongo/db/change_stream_options_manager.cpp | 2 | ||||
-rw-r--r-- | src/mongo/db/change_stream_options_manager.h | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/db/change_stream_options_manager.cpp b/src/mongo/db/change_stream_options_manager.cpp index a9a417aede6..4832b1dc2e4 100644 --- a/src/mongo/db/change_stream_options_manager.cpp +++ b/src/mongo/db/change_stream_options_manager.cpp @@ -57,7 +57,7 @@ void ChangeStreamOptionsManager::create(ServiceContext* service) { getChangeStreamOptionsManager(service).emplace(service); } -const ChangeStreamOptions& ChangeStreamOptionsManager::getOptions(OperationContext* opCtx) { +ChangeStreamOptions ChangeStreamOptionsManager::getOptions(OperationContext* opCtx) const { stdx::lock_guard<Latch> L(_mutex); return _changeStreamOptions; } diff --git a/src/mongo/db/change_stream_options_manager.h b/src/mongo/db/change_stream_options_manager.h index 28580deb810..364c51c535c 100644 --- a/src/mongo/db/change_stream_options_manager.h +++ b/src/mongo/db/change_stream_options_manager.h @@ -68,7 +68,7 @@ public: /** * Returns the change-streams options. */ - const ChangeStreamOptions& getOptions(OperationContext* opCtx); + ChangeStreamOptions getOptions(OperationContext* opCtx) const; /** * Sets the provided change-streams options. Returns OK on success, otherwise appropriate error @@ -87,7 +87,7 @@ public: private: ChangeStreamOptions _changeStreamOptions; - Mutex _mutex = MONGO_MAKE_LATCH("ChangeStreamOptionsManager::mutex"); + mutable Mutex _mutex = MONGO_MAKE_LATCH("ChangeStreamOptionsManager::mutex"); }; } // namespace mongo |