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 783FF1FF2AA for ; Wed, 3 Jul 2024 12:11:47 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 35838588B; Wed, 3 Jul 2024 12:12:04 +0200 (CEST) From: Christian Ebner To: pbs-devel@lists.proxmox.com Date: Wed, 3 Jul 2024 12:11:00 +0200 Message-Id: <20240703101100.308371-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.021 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 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] datastore: replace deprecated `archive_type` function 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" Commit ea584a75 "move more api types for the client" deprecated the `archive_type` function in favor of the associated function `ArchiveType::from_path`. Replace all remaining callers of the deprecated function with its replacement. Signed-off-by: Christian Ebner --- pbs-datastore/src/datastore.rs | 8 ++++---- pbs-datastore/src/snapshot_reader.rs | 21 ++++++++++++--------- proxmox-backup-client/src/main.rs | 4 ++-- src/api2/backup/mod.rs | 4 ++-- src/api2/reader/mod.rs | 4 ++-- src/api2/tape/restore.rs | 4 ++-- src/backup/verify.rs | 4 ++-- src/server/pull.rs | 6 +++--- 8 files changed, 29 insertions(+), 26 deletions(-) diff --git a/pbs-datastore/src/datastore.rs b/pbs-datastore/src/datastore.rs index f95da7615..3699eb52f 100644 --- a/pbs-datastore/src/datastore.rs +++ b/pbs-datastore/src/datastore.rs @@ -29,7 +29,7 @@ use crate::dynamic_index::{DynamicIndexReader, DynamicIndexWriter}; use crate::fixed_index::{FixedIndexReader, FixedIndexWriter}; use crate::hierarchy::{ListGroups, ListGroupsType, ListNamespaces, ListNamespacesRecursive}; use crate::index::IndexFile; -use crate::manifest::{archive_type, ArchiveType}; +use crate::manifest::ArchiveType; use crate::task_tracking::{self, update_active_operations}; use crate::DataBlob; @@ -377,7 +377,7 @@ impl DataStore { P: AsRef, { let filename = filename.as_ref(); - let out: Box = match archive_type(filename)? { + let out: Box = match ArchiveType::from_path(filename)? { ArchiveType::DynamicIndex => Box::new(self.open_dynamic_reader(filename)?), ArchiveType::FixedIndex => Box::new(self.open_fixed_reader(filename)?), _ => bail!("cannot open index file of unknown type: {:?}", filename), @@ -936,7 +936,7 @@ impl DataStore { continue; } }; - if let Ok(archive_type) = archive_type(&path) { + if let Ok(archive_type) = ArchiveType::from_path(&path) { if archive_type == ArchiveType::FixedIndex || archive_type == ArchiveType::DynamicIndex { @@ -1012,7 +1012,7 @@ impl DataStore { match std::fs::File::open(&img) { Ok(file) => { - if let Ok(archive_type) = archive_type(&img) { + if let Ok(archive_type) = ArchiveType::from_path(&img) { if archive_type == ArchiveType::FixedIndex { let index = FixedIndexReader::new(file).map_err(|e| { format_err!("can't read index '{}' - {}", img.to_string_lossy(), e) diff --git a/pbs-datastore/src/snapshot_reader.rs b/pbs-datastore/src/snapshot_reader.rs index ec7a48e54..f9c772079 100644 --- a/pbs-datastore/src/snapshot_reader.rs +++ b/pbs-datastore/src/snapshot_reader.rs @@ -14,7 +14,7 @@ use crate::backup_info::BackupDir; use crate::dynamic_index::DynamicIndexReader; use crate::fixed_index::FixedIndexReader; use crate::index::IndexFile; -use crate::manifest::{archive_type, ArchiveType, CLIENT_LOG_BLOB_NAME, MANIFEST_BLOB_NAME}; +use crate::manifest::{ArchiveType, CLIENT_LOG_BLOB_NAME, MANIFEST_BLOB_NAME}; use crate::DataStore; /// Helper to access the contents of a datastore backup snapshot @@ -138,13 +138,16 @@ impl<'a, F: Fn(&[u8; 32]) -> bool> Iterator for SnapshotChunkIterator<'a, F> { if self.current_index.is_none() { if let Some(filename) = self.todo_list.pop() { let file = self.snapshot_reader.open_file(&filename)?; - let index: Box = match archive_type(&filename)? { - ArchiveType::FixedIndex => Box::new(FixedIndexReader::new(file)?), - ArchiveType::DynamicIndex => Box::new(DynamicIndexReader::new(file)?), - _ => bail!( - "SnapshotChunkIterator: got unknown file type - internal error" - ), - }; + let index: Box = + match ArchiveType::from_path(&filename)? { + ArchiveType::FixedIndex => Box::new(FixedIndexReader::new(file)?), + ArchiveType::DynamicIndex => { + Box::new(DynamicIndexReader::new(file)?) + } + _ => bail!( + "SnapshotChunkIterator: got unknown file type - internal error" + ), + }; let datastore = DataStore::lookup_datastore( self.snapshot_reader.datastore_name(), @@ -178,7 +181,7 @@ impl<'a, F: Fn(&[u8; 32]) -> bool> SnapshotChunkIterator<'a, F> { let mut todo_list = Vec::new(); for filename in snapshot_reader.file_list() { - match archive_type(filename)? { + match ArchiveType::from_path(filename)? { ArchiveType::FixedIndex | ArchiveType::DynamicIndex => { todo_list.push(filename.to_owned()); } diff --git a/proxmox-backup-client/src/main.rs b/proxmox-backup-client/src/main.rs index 003abaef2..6a7d09047 100644 --- a/proxmox-backup-client/src/main.rs +++ b/proxmox-backup-client/src/main.rs @@ -55,7 +55,7 @@ use pbs_datastore::dynamic_index::{BufferedDynamicReader, DynamicIndexReader, Lo use pbs_datastore::fixed_index::FixedIndexReader; use pbs_datastore::index::IndexFile; use pbs_datastore::manifest::{ - archive_type, ArchiveType, BackupManifest, ENCRYPTED_KEY_BLOB_NAME, MANIFEST_BLOB_NAME, + ArchiveType, BackupManifest, ENCRYPTED_KEY_BLOB_NAME, MANIFEST_BLOB_NAME, }; use pbs_datastore::read_chunk::AsyncReadChunk; use pbs_datastore::CATALOG_NAME; @@ -1361,7 +1361,7 @@ async fn dump_image( fn parse_archive_type(name: &str) -> (String, ArchiveType) { if name.ends_with(".didx") || name.ends_with(".fidx") || name.ends_with(".blob") { - (name.into(), archive_type(name).unwrap()) + (name.into(), ArchiveType::from_path(name).unwrap()) } else if has_pxar_filename_extension(name, false) { (format!("{}.didx", name), ArchiveType::DynamicIndex) } else if name.ends_with(".img") { diff --git a/src/api2/backup/mod.rs b/src/api2/backup/mod.rs index 013043dd0..915fb2a84 100644 --- a/src/api2/backup/mod.rs +++ b/src/api2/backup/mod.rs @@ -23,7 +23,7 @@ use pbs_api_types::{ }; use pbs_config::CachedUserInfo; use pbs_datastore::index::IndexFile; -use pbs_datastore::manifest::{archive_type, ArchiveType}; +use pbs_datastore::manifest::ArchiveType; use pbs_datastore::{DataStore, PROXMOX_BACKUP_PROTOCOL_ID_V1}; use pbs_tools::json::{required_array_param, required_integer_param, required_string_param}; use proxmox_rest_server::{H2Service, WorkerTask}; @@ -839,7 +839,7 @@ fn download_previous( path.push(&archive_name); { - let index: Option> = match archive_type(&archive_name)? { + let index: Option> = match ArchiveType::from_path(&archive_name)? { ArchiveType::FixedIndex => { let index = env.datastore.open_fixed_reader(&path)?; Some(Box::new(index)) diff --git a/src/api2/reader/mod.rs b/src/api2/reader/mod.rs index 42b428385..23492f64c 100644 --- a/src/api2/reader/mod.rs +++ b/src/api2/reader/mod.rs @@ -23,7 +23,7 @@ use pbs_api_types::{ }; use pbs_config::CachedUserInfo; use pbs_datastore::index::IndexFile; -use pbs_datastore::manifest::{archive_type, ArchiveType}; +use pbs_datastore::manifest::ArchiveType; use pbs_datastore::{DataStore, PROXMOX_BACKUP_READER_PROTOCOL_ID_V1}; use pbs_tools::json::required_string_param; use proxmox_rest_server::{H2Service, WorkerTask}; @@ -261,7 +261,7 @@ fn download_file( env.log(format!("download {:?}", path.clone())); - let index: Option> = match archive_type(&file_name)? { + let index: Option> = match ArchiveType::from_path(&file_name)? { ArchiveType::FixedIndex => { let index = env.datastore.open_fixed_reader(&path)?; Some(Box::new(index)) diff --git a/src/api2/tape/restore.rs b/src/api2/tape/restore.rs index 7b96acb6c..79200d1b9 100644 --- a/src/api2/tape/restore.rs +++ b/src/api2/tape/restore.rs @@ -28,7 +28,7 @@ use pbs_config::CachedUserInfo; use pbs_datastore::dynamic_index::DynamicIndexReader; use pbs_datastore::fixed_index::FixedIndexReader; use pbs_datastore::index::IndexFile; -use pbs_datastore::manifest::{archive_type, ArchiveType, BackupManifest, MANIFEST_BLOB_NAME}; +use pbs_datastore::manifest::{ArchiveType, BackupManifest, MANIFEST_BLOB_NAME}; use pbs_datastore::{DataBlob, DataStore}; use pbs_tape::{ BlockReadError, MediaContentHeader, TapeRead, PROXMOX_BACKUP_CONTENT_HEADER_MAGIC_1_0, @@ -1100,7 +1100,7 @@ fn restore_snapshots_to_tmpdir( let mut archive_path = tmp_path.to_owned(); archive_path.push(&item.filename); - let index: Box = match archive_type(&item.filename)? { + let index: Box = match ArchiveType::from_path(&item.filename)? { ArchiveType::DynamicIndex => { Box::new(DynamicIndexReader::open(&archive_path)?) } diff --git a/src/backup/verify.rs b/src/backup/verify.rs index c972e5328..8dde7dacc 100644 --- a/src/backup/verify.rs +++ b/src/backup/verify.rs @@ -14,7 +14,7 @@ use pbs_api_types::{ }; use pbs_datastore::backup_info::{BackupDir, BackupGroup, BackupInfo}; use pbs_datastore::index::IndexFile; -use pbs_datastore::manifest::{archive_type, ArchiveType, BackupManifest, FileInfo}; +use pbs_datastore::manifest::{ArchiveType, BackupManifest, FileInfo}; use pbs_datastore::{DataBlob, DataStore, StoreProgress}; use proxmox_sys::fs::lock_dir_noblock_shared; @@ -407,7 +407,7 @@ pub fn verify_backup_dir_with_lock( for info in manifest.files() { let result = proxmox_lang::try_block!({ task_log!(verify_worker.worker, " check {}", info.filename); - match archive_type(&info.filename)? { + match ArchiveType::from_path(&info.filename)? { ArchiveType::FixedIndex => verify_fixed_index(verify_worker, backup_dir, info), ArchiveType::DynamicIndex => verify_dynamic_index(verify_worker, backup_dir, info), ArchiveType::Blob => verify_blob(backup_dir, info), diff --git a/src/server/pull.rs b/src/server/pull.rs index 14744e9c8..d144e2f2d 100644 --- a/src/server/pull.rs +++ b/src/server/pull.rs @@ -27,7 +27,7 @@ use pbs_datastore::dynamic_index::DynamicIndexReader; use pbs_datastore::fixed_index::FixedIndexReader; use pbs_datastore::index::IndexFile; use pbs_datastore::manifest::{ - archive_type, ArchiveType, BackupManifest, FileInfo, CLIENT_LOG_BLOB_NAME, MANIFEST_BLOB_NAME, + ArchiveType, BackupManifest, FileInfo, CLIENT_LOG_BLOB_NAME, MANIFEST_BLOB_NAME, }; use pbs_datastore::read_chunk::AsyncReadChunk; use pbs_datastore::{ @@ -753,7 +753,7 @@ async fn pull_single_archive<'a>( let mut tmpfile = std::fs::OpenOptions::new().read(true).open(&tmp_path)?; - match archive_type(archive_name)? { + match ArchiveType::from_path(archive_name)? { ArchiveType::DynamicIndex => { let index = DynamicIndexReader::new(tmpfile).map_err(|err| { format_err!("unable to read dynamic index {:?} - {}", tmp_path, err) @@ -874,7 +874,7 @@ async fn pull_snapshot<'a>( path.push(&item.filename); if path.exists() { - match archive_type(&item.filename)? { + match ArchiveType::from_path(&item.filename)? { ArchiveType::DynamicIndex => { let index = DynamicIndexReader::open(&path)?; let (csum, size) = index.compute_csum(); -- 2.39.2 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel