From: Friedrich Weber <f.weber@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: Re: [pve-devel] [PATCH manager] api2 tools: rrd data: prefer new-format keys over old-format keys
Date: Mon, 10 Nov 2025 15:51:55 +0100 [thread overview]
Message-ID: <c429c31c-386e-433e-b93a-20b369cd6bc2@proxmox.com> (raw)
In-Reply-To: <20251021155034.143672-1-f.weber@proxmox.com>
Ping, as Hannes Dürr also ran into this issue just now.
On 21/10/2025 17:50, Friedrich Weber wrote:
> This fixes an issue where on a fresh Proxmox VE 9 cluster, the status
> of the first VM/container would not be updated in the resource tree
> for the first 5 minutes after creation. For example, starting the
> newly created guest after the first pvestatd status update would not
> update the state to "running" for 5 minutes.
>
> The reason is that pvestatd, when broadcasting RRD data, checks for
> existence of /var/lib/rrdcached/db/pve-vm-9.0/ to decide whether to
> send RRD data with new-format (pve-vm-9.0/) or old-format (pve2.3-vm/)
> keys. The directory does not exist on nodes of a fresh cluster without
> guests, so pvestatd falls back to sending an old-format key. pmxcfs,
> upon receiving the key, creates the directory, so on the next pvestatd
> status update, pvestatd will send out new-format keys. But until the
> entry with the old-format key expires (after 5 minutes), both the
> new-format and the old-format key exist in the RRD data. Currently, if
> both keys are present, get_rrd_key will return the old-format key,
> meaning that any status updates with the new-format key are not
> registered. In order to fix this, prefer the new-format key if it is
> present.
>
> Signed-off-by: Friedrich Weber <f.weber@proxmox.com>
> ---
>
> Notes:
> Encountered during a training, where one is more likely to closely
> watch the state of the first created guest.
>
> I'm unsure if this is a good fix.
>
> An alternative fix for this particular case would be to instead have
> pvestatd always send out new-style keys on a fresh cluster.
>
> However, another situation where there could be both old-format and
> new-format keys is in a mixed 8+9 cluster (e.g. during upgrade).
>
> One issue is that get_rrd_key on 8 would still prefer old-style keys
> (unless we backport this patch to 8), so behavior on 8 and 9 would be
> different.
>
> Another issue is that having both an old-format and new-format key
> could happen after migrating a VM from a PVE 8 node (sending
> old-format keys) to a PVE 9 node (sending new-format keys). In this
> direction, I guess we also want to prefer new-format keys over the
> old-format keys. But when migrating a VM from a PVE 9 (sending
> new-format keys) to a PVE 8 node (sending old-format keys) -- which is
> admittedly not supported -- it would make more sense to prefer
> old-format keys.
>
> Perhaps a better solution is, if both old-format and new-format keys
> are present, to prefer the key whose entry has the more recent
> timestamp (ctime)?
Honestly, I'm not sure if this extra complexity just to make it work in
an unsupported usecase (PVE9->8 migration) is worth it. Maybe this patch
(always prefer new format over old format) is OK after all (and could be
backported to PVE 8).
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
next prev parent reply other threads:[~2025-11-10 14:51 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-21 15:50 Friedrich Weber
2025-11-10 14:51 ` Friedrich Weber [this message]
2025-11-14 11:52 ` Thomas Lamprecht
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c429c31c-386e-433e-b93a-20b369cd6bc2@proxmox.com \
--to=f.weber@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox