From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 27A3E7902B for ; Mon, 3 May 2021 13:24:16 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 228891CD5E for ; Mon, 3 May 2021 13:23:46 +0200 (CEST) Received: from elsa.proxmox.com (unknown [94.136.29.99]) by firstgate.proxmox.com (Proxmox) with ESMTP id E87081CD41 for ; Mon, 3 May 2021 13:23:44 +0200 (CEST) Received: by elsa.proxmox.com (Postfix, from userid 0) id B71B1AEB2D6; Mon, 3 May 2021 13:23:38 +0200 (CEST) From: Dietmar Maurer To: pbs-devel@lists.proxmox.com Date: Mon, 3 May 2021 13:23:36 +0200 Message-Id: <20210503112337.29879-3-dietmar@proxmox.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20210503112337.29879-1-dietmar@proxmox.com> References: <20210503112337.29879-1-dietmar@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.373 Adjusted score from AWL reputation of From: address KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RDNS_NONE 1.274 Delivered to internal network by a host with no rDNS SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pbs-devel] [PATCH proxmox-backup 3/4] tape restore: add restore speed to logs X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 May 2021 11:24:16 -0000 --- 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