Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 2 additions & 10 deletions validator/db/package.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,16 +48,8 @@ Package::Package(td::FileFd fd) : fd_(std::move(fd)) {
}

td::Status Package::truncate(td::uint64 size) {
auto target_size = size + header_size();
TRY_RESULT(current_size, fd_.get_size());

// Only truncate if the size actually differs to avoid updating mtime unnecessarily
if (current_size != target_size) {
TRY_STATUS(fd_.seek(target_size));
return fd_.truncate_to_current_position(target_size);
}

return td::Status::OK();
TRY_STATUS(fd_.seek(size + header_size()));
return fd_.truncate_to_current_position(size + header_size());
}

td::uint64 Package::append(std::string filename, td::Slice data, bool sync) {
Expand Down