[pve-devel] [PATCH storage] content-dirs check: silently skip paths that cannot be resolved
Friedrich Weber
f.weber at proxmox.com
Thu Jun 15 13:36:58 CEST 2023
Since commit 8e623a2930f7aee4b3309b1f297613a250ee4698, the inequality
check for content-dirs prints a warning if a content directory path
could not be resolved, i.e., if `abs_path` returns undef. Among other
things, `abs_path` returns undef if the path has an inner (= any but
last) component that does not exist. This can happen for a storage
with content type `iso,vztmpl` and `create-subdirs` set to 0, in case
`template/` does not exist. In this case, the warnings printed by
pvestatd are quite noisy.
As missing content directories are not a problem per se, remove the
warning and just ignore the directory during the inequality check.
Signed-off-by: Friedrich Weber <f.weber at proxmox.com>
---
src/PVE/Storage/Plugin.pm | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/src/PVE/Storage/Plugin.pm b/src/PVE/Storage/Plugin.pm
index ab6b675..3f9f1ec 100644
--- a/src/PVE/Storage/Plugin.pm
+++ b/src/PVE/Storage/Plugin.pm
@@ -1396,10 +1396,7 @@ sub activate_storage {
for my $vtype (sort keys $scfg->{content}->%*) {
my $subdir = $class->get_subdir($scfg, $vtype);
my $abs_subdir = abs_path($subdir);
- if (!defined($abs_subdir)) {
- warn "could not get absolute path for '$subdir' - $!\n";
- next;
- }
+ next if !defined($abs_subdir);
die "storage '$storeid' uses directory $abs_subdir for multiple content types\n"
if defined($abs_subdir) && defined($resolved_subdirs->{$abs_subdir});
--
2.39.2
More information about the pve-devel
mailing list