summaryrefslogtreecommitdiff
path: root/src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h
diff options
context:
space:
mode:
authorDavid Storch <david.storch@mongodb.com>2019-10-24 22:27:47 +0000
committerevergreen <evergreen@mongodb.com>2019-10-24 22:27:47 +0000
commitf22a062b373ccdb5aa9232a2da435918b54c358e (patch)
treef10d356535a1bdccc57b1f51e19f632f5493a20f /src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h
parentb4aa65fde0a61a8a8e2f7c439f928215b23c14e0 (diff)
downloadmongo-f22a062b373ccdb5aa9232a2da435918b54c358e.tar.gz
SERVER-43685 Move snapshot id handling above storage API.
This ensures that all storage engines support tracking of snapshot ids, and by extenion, allows the query system to rely on the validity of these ids for all engines.
Diffstat (limited to 'src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h')
-rw-r--r--src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h b/src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h
index 02e1727c44c..568a8fd19a5 100644
--- a/src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h
+++ b/src/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_recovery_unit.h
@@ -47,23 +47,15 @@ public:
virtual ~EphemeralForTestRecoveryUnit();
void beginUnitOfWork(OperationContext* opCtx) final;
- void commitUnitOfWork() final;
- void abortUnitOfWork() final;
virtual bool waitUntilDurable(OperationContext* opCtx);
bool inActiveTxn() const;
- virtual void abandonSnapshot();
-
Status obtainMajorityCommittedSnapshot() final;
virtual void registerChange(std::unique_ptr<Change> change);
- virtual SnapshotId getSnapshotId() const {
- return SnapshotId();
- }
-
virtual void setOrderedCommit(bool orderedCommit) {}
virtual void prepareUnitOfWork() override {}
@@ -89,6 +81,11 @@ public:
}
private:
+ void doCommitUnitOfWork() final;
+ void doAbortUnitOfWork() final;
+
+ void doAbandonSnapshot() final;
+
typedef std::vector<std::shared_ptr<Change>> Changes;
Changes _changes;