[pve-devel] applied-series: [PATCH-SERIES v2] some replication-related improvements

Fabian Grünbichler f.gruenbichler at proxmox.com
Mon Nov 9 10:48:30 CET 2020


On October 29, 2020 2:31 pm, Fabian Ebner wrote:
> Is a second version for the two older series:
> https://lists.proxmox.com/pipermail/pve-devel/2020-July/044550.html
> https://lists.proxmox.com/pipermail/pve-devel/2020-August/044589.html
> 
> While the qemu-server patches don't require the guest-common patches,
> a change to patch #7 is only relevant with the new switch_replication_target.
> 
> Changes from v1:
>     * Dropped an already applied patch.
>     * Dropped the patch: 'Hold the guest migration lock when changing the replication config'
>       Being able to edit a job's config while it's running is not a bad thing
>       as long as it doesn't cause problems. And the fact that run_replication
>       acquires the guest migration lock should ensure that. It guarantees that
>       a job cannot be removed while a migration is running (only *marked* for
>       removal and with patch 8 we chicken out in that case) and a new job
>       cannot run while a migration is running, so:
>           * if it's added before the migration reads the replication
>             config and the replication target is the migration target, the
>             migration itself might end up running the first replication, but
>             that's fine.
>           * otherwise it will run for the first time after migration is done.
>     * Dropped an RFC making job_status return jobs with source=target=local.
>       The replication tests would need to be adapted, and there might be
>       a better way than have job_status return them.
>     * Added patch #8 for checking if the replication job to be used for
>       migration is scheduled for removal.
>     * Split up a patch, now patch #4 + #5.
>     * Now that the source is updated as well, call switch_replication_job_target
>       for every replicated VM (even if we migrated to a non-replication target).
>       Previously that happened only in the was-VM-stolen-check in job_status
>       (still happens there for VMs that were actually stolen).
> 
> 
> guest-common:
> 
> Fabian Ebner (5):
>   job_status: read only after acquiring the lock
>   clarify what the source property is used for in a replication job
>   also update sources in switch_replication_job_target
>   create nolock variant for switch_replication_job_target
>   job_status: simplify fixup of jobs for stolen guests
> 
>  PVE/ReplicationConfig.pm | 46 +++++++++++++++++-----------------------
>  PVE/ReplicationState.pm  | 42 +++++++++++++++---------------------
>  2 files changed, 37 insertions(+), 51 deletions(-)
> 
> 
> qemu-server:
> 
> Fabian Ebner (3):
>   Repeat check for replication target in locked section
>   fix checks for transfering replication state/switching job target
>   don't migrate replicated VM whose replication job is marked for
>     removal
> 
>  PVE/API2/Qemu.pm   | 11 +++--------
>  PVE/QemuMigrate.pm | 30 +++++++++++++++++++++++-------
>  2 files changed, 26 insertions(+), 15 deletions(-)
> 
> -- 
> 2.20.1
> 
> 
> 
> _______________________________________________
> 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