|
|
@ -5082,8 +5082,10 @@ Status VersionSet::ReduceNumberOfLevels(const std::string& dbname, |
|
|
|
// metadata from Manifest to VersionSet before calling this function.
|
|
|
|
// metadata from Manifest to VersionSet before calling this function.
|
|
|
|
Status VersionSet::GetLiveFilesChecksumInfo(FileChecksumList* checksum_list) { |
|
|
|
Status VersionSet::GetLiveFilesChecksumInfo(FileChecksumList* checksum_list) { |
|
|
|
// Clean the previously stored checksum information if any.
|
|
|
|
// Clean the previously stored checksum information if any.
|
|
|
|
|
|
|
|
Status s; |
|
|
|
if (checksum_list == nullptr) { |
|
|
|
if (checksum_list == nullptr) { |
|
|
|
return Status::InvalidArgument("checksum_list is nullptr"); |
|
|
|
s = Status::InvalidArgument("checksum_list is nullptr"); |
|
|
|
|
|
|
|
return s; |
|
|
|
} |
|
|
|
} |
|
|
|
checksum_list->reset(); |
|
|
|
checksum_list->reset(); |
|
|
|
|
|
|
|
|
|
|
@ -5094,13 +5096,22 @@ Status VersionSet::GetLiveFilesChecksumInfo(FileChecksumList* checksum_list) { |
|
|
|
for (int level = 0; level < cfd->NumberLevels(); level++) { |
|
|
|
for (int level = 0; level < cfd->NumberLevels(); level++) { |
|
|
|
for (const auto& file : |
|
|
|
for (const auto& file : |
|
|
|
cfd->current()->storage_info()->LevelFiles(level)) { |
|
|
|
cfd->current()->storage_info()->LevelFiles(level)) { |
|
|
|
checksum_list->InsertOneFileChecksum(file->fd.GetNumber(), |
|
|
|
s = checksum_list->InsertOneFileChecksum(file->fd.GetNumber(), |
|
|
|
file->file_checksum, |
|
|
|
file->file_checksum, |
|
|
|
file->file_checksum_func_name); |
|
|
|
file->file_checksum_func_name); |
|
|
|
|
|
|
|
if (!s.ok()) { |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (!s.ok()) { |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (!s.ok()) { |
|
|
|
|
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
return Status::OK(); |
|
|
|
return s; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Status VersionSet::DumpManifest(Options& options, std::string& dscname, |
|
|
|
Status VersionSet::DumpManifest(Options& options, std::string& dscname, |
|
|
|