[pbs-devel] [PATCH proxmox-backup 3/4] tape restore: add restore speed to logs
Dietmar Maurer
dietmar at proxmox.com
Mon May 3 13:23:36 CEST 2021
---
src/api2/tape/restore.rs | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/src/api2/tape/restore.rs b/src/api2/tape/restore.rs
index 97fd822f..2e422cbc 100644
--- a/src/api2/tape/restore.rs
+++ b/src/api2/tape/restore.rs
@@ -698,6 +698,9 @@ fn restore_chunk_archive<'a>(
let verify_and_write_channel = writer_pool.channel();
+ let start_time = std::time::SystemTime::now();
+ let mut bytes = 0;
+
loop {
let (digest, blob) = match decoder.next_chunk() {
Ok(Some((digest, blob))) => (digest, blob),
@@ -728,6 +731,7 @@ fn restore_chunk_archive<'a>(
if verbose {
task_log!(worker, "Insert chunk: {}", proxmox::tools::digest_to_hex(&digest));
}
+ bytes += blob.raw_size();
verify_and_write_channel.send((blob, digest.clone()))?;
} else if verbose {
task_log!(worker, "Found existing chunk: {}", proxmox::tools::digest_to_hex(&digest));
@@ -740,6 +744,15 @@ fn restore_chunk_archive<'a>(
writer_pool.complete()?;
+ let elapsed = start_time.elapsed()?.as_secs_f64();
+
+ task_log!(
+ worker,
+ "restored {} bytes ({:.2} MB/s)",
+ bytes,
+ (bytes as f64) / (1_000_000.0 * elapsed)
+ );
+
Ok(Some(chunks))
}
--
2.20.1
More information about the pbs-devel
mailing list