32 #include "mongo/base/disallow_copying.h" 34 #include "mongo/stdx/condition_variable.h" 35 #include "mongo/stdx/mutex.h" 36 #include "mongo/stdx/thread.h" 37 #include "mongo/util/concurrency/with_lock.h" 41 class WiredTigerRecordStore;
42 class WiredTigerSessionCache;
57 const std::string&
uri,
79 OperationContext* opCtx)
const;
93 mutable stdx::condition_variable
95 mutable stdx::condition_variable
void setOplogReadTimestamp(Timestamp ts)
Definition: wiredtiger_oplog_manager.cpp:241
Definition: wiredtiger_record_store.h:73
RecordId _oplogMaxAtStartup
Definition: wiredtiger_oplog_manager.h:103
Copyright (C) 2014 MongoDB Inc.
Definition: bson_collection_catalog_entry.cpp:38
stdx::condition_variable _opsBecameVisibleCV
Definition: wiredtiger_oplog_manager.h:96
stdx::condition_variable _opsWaitingForJournalCV
Definition: wiredtiger_oplog_manager.h:94
bool _opsWaitingForJournal
Definition: wiredtiger_oplog_manager.h:104
bool isRunning()
Definition: wiredtiger_oplog_manager.h:62
void halt()
Definition: wiredtiger_oplog_manager.cpp:88
stdx::mutex _oplogVisibilityStateMutex
Definition: wiredtiger_oplog_manager.h:92
std::uint64_t getOplogReadTimestamp() const
Definition: wiredtiger_oplog_manager.cpp:237
bool _isRunning
Definition: wiredtiger_oplog_manager.h:98
void waitForAllEarlierOplogWritesToBeVisible(const WiredTigerRecordStore *oplogRecordStore, OperationContext *opCtx) const
Definition: wiredtiger_oplog_manager.cpp:102
Definition: wiredtiger_oplog_manager.h:47
MONGO_DISALLOW_COPYING(WiredTigerOplogManager)
WiredTigerOplogManager()
Definition: wiredtiger_oplog_manager.h:51
stdx::thread _oplogJournalThread
Definition: wiredtiger_oplog_manager.h:91
AtomicUInt64 _oplogReadTimestamp
Definition: wiredtiger_oplog_manager.h:106
void start(OperationContext *opCtx, const std::string &uri, WiredTigerRecordStore *oplogRecordStore)
Definition: wiredtiger_oplog_manager.cpp:52
void _setOplogReadTimestamp(WithLock, uint64_t newTimestamp)
Definition: wiredtiger_oplog_manager.cpp:246
~WiredTigerOplogManager()
Definition: wiredtiger_oplog_manager.h:52
void _oplogJournalThreadLoop(WiredTigerSessionCache *sessionCache, WiredTigerRecordStore *oplogRecordStore) noexcept
Definition: wiredtiger_oplog_manager.cpp:157
uint64_t fetchAllCommittedValue(WT_CONNECTION *conn)
Definition: wiredtiger_oplog_manager.cpp:252
This cache implements a shared pool of WiredTiger sessions with the goal to amortize the cost of sess...
Definition: wiredtiger_session_cache.h:156
void triggerJournalFlush()
Definition: wiredtiger_oplog_manager.cpp:149
Collection *const OperationContext *const opCtx
Definition: collection_impl.cpp:80
std::string uri
Definition: wiredtiger_standard_record_store_test.cpp:367
bool _shuttingDown
Definition: wiredtiger_oplog_manager.h:99