From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 6F7411FF15F for ; Mon, 12 Aug 2024 12:32:11 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 5A1B230731; Mon, 12 Aug 2024 12:32:25 +0200 (CEST) From: Christian Ebner To: pbs-devel@lists.proxmox.com Date: Mon, 12 Aug 2024 12:31:29 +0200 Message-Id: <20240812103139.288854-1-c.ebner@proxmox.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.027 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record T_SCC_BODY_TEXT_LINE -0.01 - Subject: [pbs-devel] [PATCH v3 proxmox-backup 00/10] fix catalog dump and shell for split pxar archives 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: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" This patch series fixes the `catalog dump` and `catalog shell` commands for snapshots created by setting the `change-detection-mode` to either `data` or `metadata`, therefore using split pxar archive encoding without encoding the dedicated catalog. If no catalog file can be found in the snaphsots manifest, the fallback behaviour is now to check if there are metadata archives present in the manifest, and if so use the metadata archive accessor for either dumping the contents in a format compatible to the catalog dump or to interactively navigate and restore contents via the catalog shell. Changes since version 2 (thanks to Fabian for the comments and suggestions): - Move and factor out helpers to pxar/tools submodule instead of using the tools module, which is for more generally client tools. - Improve error handling in catalog shell by avoiding unwrap of missing directory stack entries, bail instead. - fix issue with factoring out of `entry_path_with_prefix` helper - Convert to `DirEntryAttribute` by implementing the `TryFrom` trait, replacing previous helper. Changes since version 1: - Implement also the `catalog shell` command for split pxar archives - Factor out common functionality into dedicated helpers Christian Ebner (10): client: tools: make tools module public client: pxar: move catalog lookup helper to pxar tools client: tools: move pxar root entry helper to pxar submodule client: make helper to get remote pxar reader reusable client: tools: factor out entry path prefix helper client: tools: factor out pxar entry to dir entry mapping client: add helper to dump catalog from metadata archive client: catalog: fallback to metadata archives for catalog dump client: helper to mimic catalog find using metadata archive client: catalog shell: fallback to accessor for navigation pbs-client/src/catalog_shell.rs | 291 +++++++++++++++++++++------ pbs-client/src/pxar/extract.rs | 2 +- pbs-client/src/pxar/mod.rs | 4 +- pbs-client/src/pxar/tools.rs | 256 ++++++++++++++++++++++- pbs-client/src/tools/mod.rs | 120 ----------- pbs-datastore/src/catalog.rs | 40 ++++ proxmox-backup-client/src/catalog.rs | 65 +++++- proxmox-file-restore/src/main.rs | 38 +--- pxar-bin/src/main.rs | 4 +- src/api2/admin/datastore.rs | 2 +- src/api2/tape/restore.rs | 2 +- 11 files changed, 599 insertions(+), 225 deletions(-) -- 2.39.2 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel