diff options
author | Christopher Caplinger <christopher.caplinger@mongodb.com> | 2022-01-21 15:43:16 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-01-21 16:34:36 +0000 |
commit | 80274857de4e999bec046312f53280032345a45f (patch) | |
tree | 22db64c4add3ba68fab481c0e207c333698ad035 /src/mongo/db/repl/tenant_migration_recipient_service.h | |
parent | 15fec822f608d3bae7ff0bbc111739424740bfa6 (diff) | |
download | mongo-80274857de4e999bec046312f53280032345a45f.tar.gz |
SERVER-61132: Keep backup cursor alive until file copy finishes
Diffstat (limited to 'src/mongo/db/repl/tenant_migration_recipient_service.h')
-rw-r--r-- | src/mongo/db/repl/tenant_migration_recipient_service.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mongo/db/repl/tenant_migration_recipient_service.h b/src/mongo/db/repl/tenant_migration_recipient_service.h index 92da0a80199..5c7f26e8d4b 100644 --- a/src/mongo/db/repl/tenant_migration_recipient_service.h +++ b/src/mongo/db/repl/tenant_migration_recipient_service.h @@ -366,7 +366,7 @@ public: /** * Kills the Donor backup cursor */ - void _killBackupCursor(WithLock lk); + ExecutorFuture<void> _killBackupCursor(); /** * Retrieves the start optimes from the donor and updates the in-memory state accordingly. @@ -568,9 +568,11 @@ public: std::unique_ptr<DBClientConnection> _client; // (S) std::unique_ptr<DBClientConnection> _oplogFetcherClient; // (S) - CursorId _donorFilenameBackupCursorId = 0; // (M) + CursorId _donorFilenameBackupCursorId; // (M) NamespaceString _donorFilenameBackupCursorNamespaceString; // (M) std::unique_ptr<Fetcher> _donorFilenameBackupCursorFileFetcher; // (M) + CancellationSource _backupCursorKeepAliveCancellation = {}; // (X) + boost::optional<SemiFuture<void>> _backupCursorKeepAliveFuture; // (M) std::unique_ptr<OplogFetcherFactory> _createOplogFetcherFn = std::make_unique<CreateOplogFetcherFn>(); // (M) |