From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [45.144.208.40]) by lore.proxmox.com (Postfix) with ESMTPS id 718BF1FF09F for ; Thu, 03 Sep 2026 09:51:12 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id CB7022156C; Thu, 03 Sep 2026 09:51:11 +0200 (CEST) From: Christian Ebner To: pbs-devel@lists.proxmox.com Subject: [PATCH proxmox-backup] fix #8003: sync: pull: log skipped chunk reuse for corrupt manifests Date: Thu, 3 Sep 2026 09:50:51 +0200 Message-ID: <20260903075051.109065-1-c.ebner@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1788421861979 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.686 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: 2DHYJ2W4T53N4YY3YIPKABDEIF7KUF4Z X-Message-ID-Hash: 2DHYJ2W4T53N4YY3YIPKABDEIF7KUF4Z X-MailFrom: c.ebner@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Backup Server development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Chunks from a manifest with verify state failed cannot be re-used since it is not known which chunks are corrupt and/or whether the index files referenced in the manifest are corrupt. The manifest is therefore skipped when determining the chunks from the previous snapshot during sync pull jobs. This was however not logged, causuing confusion on why a sync job now takes much longer. Add an additional log line to clarify this. Signed-off-by: Christian Ebner --- src/server/pull.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/server/pull.rs b/src/server/pull.rs index 4eb5bcf11..13f4f5b09 100644 --- a/src/server/pull.rs +++ b/src/server/pull.rs @@ -1273,7 +1273,12 @@ async fn pull_group( })?; match manifest.verify_state()? { - Some(verify_state) if verify_state.state == VerifyState::Failed => (), + Some(verify_state) if verify_state.state == VerifyState::Failed => { + bail!( + "cannot safely reuse chunks of snapshot {}, verify state failed", + info.backup_dir.backup_time_string(), + ); + } _ => { for file in manifest.files() { let index: Box = match file.filename.archive_type() { -- 2.47.3