segment->basename += filter_extension;
segment->count = 0;
segment->data_size = 0;
- segment->rf = remote->alloc_file(segment->basename, "segments");
+ segment->rf = remote->alloc_file(segment->basename,
+ group == "metadata" ? "segments0"
+ : "segments1");
segment->file = new Tarfile(segment->rf, segment->name);
segments[group] = segment;
group_sizes[segment->group].second += disk_size;
}
- SHA1Checksum segment_checksum;
- string checksum;
- if (segment_checksum.process_file(segment->rf->get_local_path().c_str())) {
- checksum = segment_checksum.checksum_str();
- }
+ string checksum
+ = Hash::hash_file(segment->rf->get_local_path().c_str());
- db->SetSegmentChecksum(segment->name, segment->basename, checksum,
- segment->data_size, disk_size);
+ db->SetSegmentMetadata(segment->name, segment->rf->get_remote_path(),
+ checksum, group, segment->data_size, disk_size);
}
segment->rf->send();