all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH guest-common 1/2] replication: prepare: include volumes without snapshots in the result
@ 2023-01-20 10:18 Fiona Ebner
  2023-01-20 10:18 ` [pve-devel] [PATCH guest-common 2/2] replication: find common base: improve error when no common base snapshot exists Fiona Ebner
  0 siblings, 1 reply; 2+ messages in thread
From: Fiona Ebner @ 2023-01-20 10:18 UTC (permalink / raw)
  To: pve-devel

Note that PVE::Storage::volume_snapshot_info() will fail when a volume
does not exist, so no non-existing volume will end up in the result
(prepare() is only called with volumes that should exist).

This makes it possible to detect a volume without snapshots in the
result of prepare(), and as a consequence, replication will now also
fail early in a situation where source and remote volume both exist,
but (at least) one of them doesn't have any snapshots.

Such a situation can happen, for example, by deleting and re-creating
a volume with the same name on the source side without running
replication after deletion.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
---
 src/PVE/Replication.pm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/PVE/Replication.pm b/src/PVE/Replication.pm
index 469ca19..f9d454d 100644
--- a/src/PVE/Replication.pm
+++ b/src/PVE/Replication.pm
@@ -172,6 +172,8 @@ sub prepare {
     my $local_snapshots = {};
     my $cleaned_replicated_volumes = {};
     foreach my $volid (@$volids) {
+	$local_snapshots->{$volid} = {};
+
 	my $info = PVE::Storage::volume_snapshot_info($storecfg, $volid);
 
 	my $removal_ok = !defined($snapname) || $info->{$snapname};
-- 
2.30.2





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-01-20 10:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-20 10:18 [pve-devel] [PATCH guest-common 1/2] replication: prepare: include volumes without snapshots in the result Fiona Ebner
2023-01-20 10:18 ` [pve-devel] [PATCH guest-common 2/2] replication: find common base: improve error when no common base snapshot exists Fiona Ebner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal