diff --git a/fdbclient/MultiVersionTransaction.actor.cpp b/fdbclient/MultiVersionTransaction.actor.cpp index c43ee8c1cb..9cdc932357 100644 --- a/fdbclient/MultiVersionTransaction.actor.cpp +++ b/fdbclient/MultiVersionTransaction.actor.cpp @@ -1608,13 +1608,15 @@ Reference MultiVersionTenant::createTransaction() { } ThreadFuture MultiVersionTenant::purgeBlobGranules(const KeyRangeRef& keyRange, Version purgeVersion, bool force) { - auto f = tenantState->db ? tenantState->db->purgeBlobGranules(keyRange, purgeVersion, force) - : ThreadFuture(Never()); - return abortableFuture(f, tenantState->db->dbState->dbVar->get().onChange); + auto tenantDb = tenantState->tenantVar->get(); + auto f = + tenantDb.value ? tenantDb.value->purgeBlobGranules(keyRange, purgeVersion, force) : ThreadFuture(Never()); + return abortableFuture(f, tenantDb.onChange); } ThreadFuture MultiVersionTenant::waitPurgeGranulesComplete(const KeyRef& purgeKey) { - auto f = tenantState->db ? tenantState->db->waitPurgeGranulesComplete(purgeKey) : ThreadFuture(Never()); - return abortableFuture(f, tenantState->db->dbState->dbVar->get().onChange); + auto tenantDb = tenantState->tenantVar->get(); + auto f = tenantDb.value ? tenantDb.value->waitPurgeGranulesComplete(purgeKey) : ThreadFuture(Never()); + return abortableFuture(f, tenantDb.onChange); } MultiVersionTenant::TenantState::TenantState(Reference db, TenantNameRef tenantName)