summaryrefslogtreecommitdiff
path: root/src/mongo/db/storage/wiredtiger/wiredtiger_util.h
diff options
context:
space:
mode:
authorLucas de Castro Borges <lucas@gnuabordo.com.br>2025-02-14 14:26:38 -0300
committerLucas de Castro Borges <lucas@gnuabordo.com.br>2025-02-14 14:26:38 -0300
commit294bc6ecabf14c09c9bc8644704921dcf97cb44e (patch)
tree279b1e0bab53901a1647ac63c1c724f0f789a663 /src/mongo/db/storage/wiredtiger/wiredtiger_util.h
parent70be7c27a251621187a1de533462ae2bb1e3bd39 (diff)
parent1e917fd798aa25b7066d4b414b51184f13d5a092 (diff)
Update upstream source from tag 'upstream/6.0.10'debian/6.0.10-1
Update to upstream version '6.0.10' with Debian dir 2d176fa254eee97b139f712fec5709641335a8c3
Diffstat (limited to 'src/mongo/db/storage/wiredtiger/wiredtiger_util.h')
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_util.h26
1 files changed, 10 insertions, 16 deletions
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_util.h b/src/mongo/db/storage/wiredtiger/wiredtiger_util.h
index 83bcd4e0293..618add61bf8 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_util.h
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_util.h
@@ -158,6 +158,8 @@ private:
WiredTigerUtil();
public:
+ static constexpr StringData kConfigStringField = "configString"_sd;
+
/**
* Fetch the type and source fields out of the colgroup metadata. 'tableUri' must be a
* valid table: uri.
@@ -315,8 +317,6 @@ public:
static void notifyStartupComplete();
- static void resetTableLoggingInfo();
-
static bool useTableLogging(const NamespaceString& nss);
static Status setTableLogging(OperationContext* opCtx, const std::string& uri, bool on);
@@ -334,6 +334,14 @@ public:
template <typename T>
static T castStatisticsValue(uint64_t statisticsValue);
+ /**
+ * Removes encryption configuration from a config string. Should only be applied on custom
+ * config strings on secondaries. Fixes an issue where encryption configuration might be
+ * replicated to non-encrypted nodes, or nodes with different encryption options, causing
+ * initial sync or replication to fail. See SERVER-68122.
+ */
+ static void removeEncryptionFromConfigString(std::string* configString);
+
private:
/**
* Casts unsigned 64-bit statistics value to T.
@@ -341,20 +349,6 @@ private:
*/
template <typename T>
static T _castStatisticsValue(uint64_t statisticsValue, T maximumResultType);
-
- static Status _setTableLogging(WiredTigerSessionCache* sessionCache,
- const std::string& uri,
- bool on);
-
- // Used to keep track of the table logging setting modifications during start up. The mutex must
- // be held prior to accessing any of the member variables in the struct.
- static Mutex _tableLoggingInfoMutex;
- static struct TableLoggingInfo {
- bool isInitializing = true;
- bool isFirstTable = true;
- bool changeTableLogging = false;
- bool hasPreviouslyIncompleteTableChecks = false;
- } _tableLoggingInfo;
};
class WiredTigerConfigParser {