summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Wlodarek <gregory.wlodarek@mongodb.com>2020-01-24 15:58:15 -0500
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-02-25 22:26:41 +0000
commit6d2375017e9ba507b577baa93be3b4bf767e1f18 (patch)
tree209e46b823869555668276237608c8b4a018a9c0
parent3c2364fc8a667c80a2c8bad7c11f5b0d3f82198b (diff)
downloadmongo-6d2375017e9ba507b577baa93be3b4bf767e1f18.tar.gz
SERVER-44410 Change backup cursor results to include a file size
(cherry picked from commit d1fe1746711948441c7a366059e58afbd6b05bd8)
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
index d2b7d81c393..1c0d17877a6 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
@@ -538,8 +538,13 @@ StatusWith<StorageEngine::BackupInformation> getBackupInformationFromBackupCurso
filePath /= name;
relativePath /= name;
- // TODO: SERVER-44410 Implement fileSize.
- std::uint64_t fileSize = 0;
+ boost::system::error_code errorCode;
+ const std::uint64_t fileSize = boost::filesystem::file_size(filePath, errorCode);
+ uassert(31403,
+ "Failed to get a file's size. Filename: {} Error: {}"_format(filePath.string(),
+ errorCode.message()),
+ !errorCode);
+
StorageEngine::BackupFile backupFile(fileSize);
backupInformation.insert({filePath.string(), backupFile});