From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 1BAAF64136 for ; Thu, 29 Oct 2020 14:32:12 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 06C539D84 for ; Thu, 29 Oct 2020 14:31:41 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [212.186.127.180]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id 66E979CE9 for ; Thu, 29 Oct 2020 14:31:38 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 336FE45F93 for ; Thu, 29 Oct 2020 14:31:38 +0100 (CET) From: Fabian Ebner To: pve-devel@lists.proxmox.com Date: Thu, 29 Oct 2020 14:31:24 +0100 Message-Id: <20201029133132.28100-1-f.ebner@proxmox.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.031 Adjusted score from AWL reputation of From: address KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [replicationconfig.pm, qemu.pm, qemumigrate.pm, replicationstate.pm, proxmox.com] Subject: [pve-devel] [PATCH-SERIES v2] some replication-related improvements X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Oct 2020 13:32:12 -0000 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