5
0
mirror of git://git.proxmox.com/git/qemu-server.git synced 2025-01-06 13:17:56 +03:00

qemuserver: foreach_volid: always include pending disks

All calling sites except for QemuConfig.pm::get_replicatable_volumes()
already enabled it. Making it the non-configurable default results in a
change in the VM replication.  Now a disk image only referenced in the
pending section will also be replicated.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
This commit is contained in:
Aaron Lauterer 2023-06-19 11:29:29 +02:00 committed by Fiona Ebner
parent 6328c554c1
commit 0b7a0b78db
4 changed files with 7 additions and 8 deletions

View File

@ -4232,7 +4232,7 @@ my $check_vm_disks_local = sub {
my $local_disks = {};
# add some more information to the disks e.g. cdrom
PVE::QemuServer::foreach_volid($vmconf, 1, sub {
PVE::QemuServer::foreach_volid($vmconf, sub {
my ($volid, $attr) = @_;
my ($storeid, $volname) = PVE::Storage::parse_volume_id($volid, 1);

View File

@ -161,7 +161,7 @@ sub get_replicatable_volumes {
$volhash->{$volid} = 1;
};
PVE::QemuServer::foreach_volid($conf, undef, $test_volid);
PVE::QemuServer::foreach_volid($conf, $test_volid);
return $volhash;
}

View File

@ -468,7 +468,7 @@ sub scan_local_volumes {
if PVE::Storage::volume_is_base_and_used($storecfg, $volid);
};
PVE::QemuServer::foreach_volid($conf, 1, sub {
PVE::QemuServer::foreach_volid($conf, sub {
my ($volid, $attr) = @_;
eval { $test_volid->($volid, $attr); };
if (my $err = $@) {

View File

@ -4840,7 +4840,7 @@ sub set_migration_caps {
}
sub foreach_volid {
my ($conf, $include_pending, $func, @param) = @_;
my ($conf, $func, @param) = @_;
my $volhash = {};
@ -4890,9 +4890,8 @@ sub foreach_volid {
PVE::QemuConfig->foreach_volume_full($conf, $include_opts, $test_volid);
if ($include_pending && defined($conf->{pending}) && $conf->{pending}->%*) {
PVE::QemuConfig->foreach_volume_full($conf->{pending}, $include_opts, $test_volid, undef, 1);
}
PVE::QemuConfig->foreach_volume_full($conf->{pending}, $include_opts, $test_volid, undef, 1)
if defined($conf->{pending}) && $conf->{pending}->%*;
foreach my $snapname (keys %{$conf->{snapshots}}) {
my $snap = $conf->{snapshots}->{$snapname};
@ -6148,7 +6147,7 @@ sub get_vm_volumes {
my ($conf) = @_;
my $vollist = [];
foreach_volid($conf, 1, sub {
foreach_volid($conf, sub {
my ($volid, $attr) = @_;
return if $volid =~ m|^/|;