summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/tenant_migration_recipient_service.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/tenant_migration_recipient_service.h')
-rw-r--r--src/mongo/db/repl/tenant_migration_recipient_service.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mongo/db/repl/tenant_migration_recipient_service.h b/src/mongo/db/repl/tenant_migration_recipient_service.h
index bce11fb695d..22de9a00fd1 100644
--- a/src/mongo/db/repl/tenant_migration_recipient_service.h
+++ b/src/mongo/db/repl/tenant_migration_recipient_service.h
@@ -214,6 +214,9 @@ public:
private:
friend class TenantMigrationRecipientServiceTest;
+ const NamespaceString _stateDocumentsNS =
+ NamespaceString::kTenantMigrationRecipientsNamespace;
+
using ConnectionPair =
std::pair<std::unique_ptr<DBClientConnection>, std::unique_ptr<DBClientConnection>>;
@@ -334,6 +337,16 @@ public:
SemiFuture<void> _markStateDocAsGarbageCollectable();
/**
+ * Deletes the state document. Does not return the opTime for the delete, since it's not
+ * necessary to wait for this delete to be majority committed (this is one of the last steps
+ * in the chain, and if the delete rolls back, the new primary will re-do the delete).
+ */
+ SemiFuture<void> _removeStateDoc(const CancellationToken& token);
+
+ SemiFuture<void> _waitForGarbageCollectionDelayThenDeleteStateDoc(
+ const CancellationToken& token);
+
+ /**
* Creates a client, connects it to the donor. If '_transientSSLParams' is not none, uses
* the migration certificate to do SSL authentication. Otherwise, uses the default
* authentication mode. Throws a user assertion on failure.