diff options
author | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-09-15 11:15:02 -0400 |
---|---|---|
committer | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-09-22 10:51:18 -0400 |
commit | 1f6d501989875dac4bcd7cffbbabf320c3cab289 (patch) | |
tree | 9d029f2d6a03006cb546c5abb8e20f10b0c92ee4 /src/mongo/db/concurrency/write_conflict_exception.cpp | |
parent | 230005e3ac47b6278e22144af8d9ce417e3e1aa2 (diff) | |
download | mongo-1f6d501989875dac4bcd7cffbbabf320c3cab289.tar.gz |
SERVER-20096: ExportedServerParameter<T> is not thread-safe for parameters changeable at runtime.
Diffstat (limited to 'src/mongo/db/concurrency/write_conflict_exception.cpp')
-rw-r--r-- | src/mongo/db/concurrency/write_conflict_exception.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/mongo/db/concurrency/write_conflict_exception.cpp b/src/mongo/db/concurrency/write_conflict_exception.cpp index a0547976100..b4f717ff8a6 100644 --- a/src/mongo/db/concurrency/write_conflict_exception.cpp +++ b/src/mongo/db/concurrency/write_conflict_exception.cpp @@ -37,7 +37,7 @@ namespace mongo { -bool WriteConflictException::trace = false; +std::atomic<bool> WriteConflictException::trace(false); WriteConflictException::WriteConflictException() : DBException("WriteConflict", ErrorCodes::WriteConflict) { @@ -64,10 +64,9 @@ void WriteConflictException::logAndBackoff(int attempt, StringData operation, St namespace { // for WriteConflictException -ExportedServerParameter<bool> TraceWCExceptionsSetting(ServerParameterSet::getGlobal(), - "traceWriteConflictExceptions", - &WriteConflictException::trace, - true, // allowedToChangeAtStartup - true); // allowedToChangeAtRuntime +ExportedServerParameter<bool, ServerParameterType::kStartupAndRuntime> TraceWCExceptionsSetting( + ServerParameterSet::getGlobal(), + "traceWriteConflictExceptions", + &WriteConflictException::trace); } } |