From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9])
	by lore.proxmox.com (Postfix) with ESMTPS id 2F3951FF15E
	for <inbox@lore.proxmox.com>; Fri,  4 Oct 2024 07:10:20 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 8813F37FAC;
	Fri,  4 Oct 2024 07:10:40 +0200 (CEST)
To: pve-devel@lists.proxmox.com
Date: Fri,  4 Oct 2024 18:07:39 +1300
MIME-Version: 1.0
Message-ID: <mailman.177.1728018639.332.pve-devel@lists.proxmox.com>
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Post: <mailto:pve-devel@lists.proxmox.com>
From: Severen Redwood via pve-devel <pve-devel@lists.proxmox.com>
Precedence: list
Cc: Severen Redwood <severen.redwood@sitehost.co.nz>,
 Thomas Lamprecht <t.lamprecht@proxmox.com>
X-Mailman-Version: 2.1.29
X-BeenThere: pve-devel@lists.proxmox.com
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
Subject: [pve-devel] [PATCH SERIES v2] Add ability to prevent suggesting
 previously used VM/CT IDs
Content-Type: multipart/mixed; boundary="===============0943004841195859898=="
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>

--===============0943004841195859898==
Content-Type: message/rfc822
Content-Disposition: inline

Return-Path: <severen.redwood@sitehost.co.nz>
X-Original-To: pve-devel@lists.proxmox.com
Delivered-To: pve-devel@lists.proxmox.com
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) server-digest SHA256)
	(No client certificate requested)
	by lists.proxmox.com (Postfix) with ESMTPS id EE99CC27D1
	for <pve-devel@lists.proxmox.com>; Fri,  4 Oct 2024 07:10:38 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id D68F437F71
	for <pve-devel@lists.proxmox.com>; Fri,  4 Oct 2024 07:10:38 +0200 (CEST)
Received: from mx3.ext.sitehost.co.nz (mx3.ext.sitehost.co.nz [120.138.20.239])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by firstgate.proxmox.com (Proxmox) with ESMTPS
	for <pve-devel@lists.proxmox.com>; Fri,  4 Oct 2024 07:10:36 +0200 (CEST)
Received: from localhost (extmx1-new.vps.sitehost.co.nz [127.0.0.1])
	by mx3.ext.sitehost.co.nz (Postfix) with ESMTP id D876718058A;
	Fri,  4 Oct 2024 18:10:27 +1300 (NZDT)
X-Virus-Scanned: SiteHost Virus/Spam Prevention on mx3.ext.sitehost.co.nz
X-Spam-Flag: NO
X-Spam-Score: -3.449
X-Spam-Status: No, score=-3.449 tagged_above=-100 required=5
	tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, RP_MATCHES_RCVD=-0.55,
	URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mx3.ext.sitehost.co.nz ([127.0.0.1])
	by localhost (mx3.ext.sitehost.co.nz [127.0.0.1]) (amavisd-new, port 10024)
	with ESMTP id pb58Zx6EB7ef; Fri,  4 Oct 2024 18:10:23 +1300 (NZDT)
Received: from yggdrasill.. (oep.air.sitehost.co.nz [120.138.16.30])
	by mx3.ext.sitehost.co.nz (Postfix) with ESMTPSA id 90753180BF4;
	Fri,  4 Oct 2024 18:10:19 +1300 (NZDT)
From: Severen Redwood <severen.redwood@sitehost.co.nz>
To: pve-devel@lists.proxmox.com
Cc: Thomas Lamprecht <t.lamprecht@proxmox.com>,
	Dietmar Maurer <dietmar@proxmox.com>
Subject: [PATCH SERIES v2] Add ability to prevent suggesting previously used VM/CT IDs
Date: Fri,  4 Oct 2024 18:07:39 +1300
Message-ID: <20241004050957.441759-1-severen.redwood@sitehost.co.nz>
X-Mailer: git-send-email 2.46.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SPAM-LEVEL: Spam detection results:  0
	AWL                     0.163 Adjusted score from AWL reputation of From: address
	BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
	DMARC_PASS               -0.1 DMARC pass policy
	KAM_DMARC_STATUS         0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
	RCVD_IN_VALIDITY_CERTIFIED_BLOCKED  0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked.  See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information.
	RCVD_IN_VALIDITY_RPBL_BLOCKED  0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked.  See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information.
	RCVD_IN_VALIDITY_SAFE_BLOCKED  0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked.  See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information.
	SPF_HELO_PASS          -0.001 SPF: HELO matches SPF record
	SPF_PASS               -0.001 SPF: sender matches SPF record

Hi everyone,

This patch series is an updated version of my previous series [1] adding
optional support for preventing PVE from suggesting previously used
VM/CT IDs.

The ID list is now read into a hash rather than an array so that O(1)
membership tests can be used when `/cluster/nextid` searches for the
next available ID. Consecutive sequences of IDs are also now written to
the disk as ranges to reduce the file size of the ID list. Finally, IDs
are now instead marked as used within the workers that handle deletion,
specifically just before the virtual machine or container's config file
is unlinked.

Thanks,
Severen

[1]: https://lore.proxmox.com/pve-devel/mailman.89.1727359009.332.pve-devel@lists.proxmox.com/T/#u

pve-manager
-----------
Severen Redwood (2):
  close #4369: api: optionally only suggest unique IDs
  close #4369: ui: add datacenter option for unique VM/CT IDs

 PVE/API2/Cluster.pm           | 13 +++++++++++--
 PVE/Makefile                  |  1 +
 PVE/UsedVmidList.pm           | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 www/manager6/dc/OptionView.js |  4 ++++
 4 files changed, 86 insertions(+), 2 deletions(-)
 create mode 100644 PVE/UsedVmidList.pm

pve-container
-------------
Severen Redwood (1):
  api: record CT ID as used after a container is destroyed

 src/PVE/API2/LXC.pm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

qemu-server
-----------
Severen Redwood (1):
 api: record VM ID as used after a virtual machine is destroyed

  PVE/API2/Qemu.pm | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)

pve-cluster
-----------
Severen Redwood (2):
 cluster files: add used_vmids.list
 datacenter config: add unique-next-id to schema

 src/PVE/Cluster.pm          | 1 +
 src/PVE/DataCenterConfig.pm | 5 +++++
 src/pmxcfs/status.c         | 1 +
 3 files changed, 7 insertions(+)


--===============0943004841195859898==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

--===============0943004841195859898==--