From dac1827d23ff925b78c5649ed31802db270a20db Mon Sep 17 00:00:00 2001 From: Stephen Atherton Date: Sun, 16 Dec 2018 00:41:38 -0800 Subject: [PATCH] Backup describe's "deep scan" mode should only ignore log begin/end versions, not expire and unreliable end versions. --- fdbclient/BackupContainer.actor.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/fdbclient/BackupContainer.actor.cpp b/fdbclient/BackupContainer.actor.cpp index d8e88b5f4a..f10f5ba862 100644 --- a/fdbclient/BackupContainer.actor.cpp +++ b/fdbclient/BackupContainer.actor.cpp @@ -528,10 +528,14 @@ public: state Optional metaExpiredEnd; state Optional metaUnreliableEnd; - // For a deep scan, do not use the version boundary metadata + std::vector> metaReads; + metaReads.push_back(store(bc->expiredEndVersion().get(), metaExpiredEnd)); + metaReads.push_back(store(bc->unreliableEndVersion().get(), metaUnreliableEnd)); + + // Only read log begin/end versions if not doing a deep scan, otherwise scan files and recalculae them. if(!deepScan) { - Void _ = wait(store(bc->logBeginVersion().get(), metaLogBegin) && store(bc->logEndVersion().get(), metaLogEnd) - && store(bc->expiredEndVersion().get(), metaExpiredEnd) && store(bc->unreliableEndVersion().get(), metaUnreliableEnd)); + metaReads.push_back(store(bc->logBeginVersion().get(), metaLogBegin)); + metaReads.push_back(store(bc->logEndVersion().get(), metaLogEnd)); } TraceEvent("BackupContainerMetadata")