[pve-devel] [RFC qemu v3 06/34] PVE backup: add target ID in backup state
Fabian Grünbichler
f.gruenbichler at proxmox.com
Tue Nov 12 17:46:15 CET 2024
On November 7, 2024 5:51 pm, Fiona Ebner wrote:
> In preparation for allowing multiple backup providers. Each backup
> target can then have its own dirty bitmap and there can be additional
> checks that the current backup state is actually associated to the
> expected target.
>
> Signed-off-by: Fiona Ebner <f.ebner at proxmox.com>
> ---
>
> No changes in v3.
>
> pve-backup.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/pve-backup.c b/pve-backup.c
> index d931746453..e8031bb89c 100644
> --- a/pve-backup.c
> +++ b/pve-backup.c
> @@ -70,6 +70,7 @@ static struct PVEBackupState {
> JobTxn *txn;
> CoMutex backup_mutex;
> CoMutex dump_callback_mutex;
> + char *target_id;
> } backup_state;
>
> static void pvebackup_init(void)
> @@ -848,7 +849,7 @@ UuidInfo coroutine_fn *qmp_backup(
>
> if (backup_state.di_list) {
> error_set(errp, ERROR_CLASS_GENERIC_ERROR,
> - "previous backup not finished");
> + "previous backup by provider '%s' not finished", backup_state.target_id);
> qemu_co_mutex_unlock(&backup_state.backup_mutex);
> return NULL;
> }
> @@ -1100,6 +1101,11 @@ UuidInfo coroutine_fn *qmp_backup(
> backup_state.vmaw = vmaw;
> backup_state.pbs = pbs;
>
> + if (backup_state.target_id) {
> + g_free(backup_state.target_id);
> + }
> + backup_state.target_id = g_strdup("Proxmox");
if we take this opportunity to also support multiple PBS targets while
we are at it, it might make sense to make this more of a "legacy" value?
or not set it at all here to opt into the legacy behaviour?
> +
> backup_state.di_list = di_list;
>
> uuid_info = g_malloc0(sizeof(*uuid_info));
> --
> 2.39.5
>
>
>
> _______________________________________________
> pve-devel mailing list
> pve-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>
>
>
More information about the pve-devel
mailing list