Storage IDs may contain a dot, which would make the tool ignore data
for them. This does not fix the issue completely, the final corner
case with storages being called called 'something.old' remains.

A warning for storages called '.old' is added to the pve8to9 checker
script. If enough people really run into this issue with such
storages, the migration script will be improved further after the
release of PVE 9. For now, use a straight-forward stop-gap measure to
avoid the fallout from not handling any storage ID with a dot.

Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
---

Changes in v2:
* Different approach as a less complicated stop-gap measure.

 src/main.rs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/main.rs b/src/main.rs
index 9afd48b..e18551c 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -331,7 +331,7 @@ fn collect_rrd_files(location: &PathBuf) -> 
Result<Vec<(CString, OsString)>> {
     contents
         .filter(|f| f.is_ok())
         .map(|f| f.unwrap().path())
-        .filter(|f| f.is_file() && f.extension().is_none())
+        .filter(|f| f.is_file() && f.extension().is_none_or(|ext| ext != 
"old"))
         .for_each(|file| {
             let path = CString::new(file.as_path().as_os_str().as_bytes())
                 .expect("Could not convert path to CString.");
-- 
2.47.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to