From: "Daniel Kral" <d.kral@proxmox.com>
To: "Thomas Lamprecht" <t.lamprecht@proxmox.com>,
<pve-devel@lists.proxmox.com>
Subject: Re: applied: [PATCH-SERIES ha-manager 0/2] make idle LRMs resolve leftover moving HA resources while disarmed
Date: Wed, 20 May 2026 10:07:48 +0200 [thread overview]
Message-ID: <DINCM4LX3BLW.2PIMFP6GOVN3W@proxmox.com> (raw)
In-Reply-To: <177922102935.2532338.3573199123091614034.b4-ty@b4>
On Tue May 19, 2026 at 10:11 PM CEST, Thomas Lamprecht wrote:
> On Tue, 19 May 2026 16:38:34 +0200, Daniel Kral wrote:
>> As in patch message #2:
>>
>> If there are HA resources, which are in transient states that defer the
>> disarming process, but their LRMs are already in idle state and disarmed
>> mode, these LRMs will not properly resolve the transient states of these
>> HA resources as assumed by the HA Manager.
>>
>> [...]
>
> Applied, thanks!
>
> Squashed Fiona's naming nits (disarm_deferring) into 2/2, added a contract doc
> on the new Tools helper, and dropped the unused $target_node destructuring and
> !$current_node guard while at it.
Thanks!
I started out also making disarmed LRMs active if an HA resource's
$target_node eq $node, but this wasn't required as the successful
migration is already confirmed by the $sd->{node} entry alone, which is
gathered from the pmxcfs itself, so no need to make the receiving LRM
active for that.
The !$current_node guard might still be worth (see my reply to Fiona's
review on patch 2/2) to be defensive against some edge cases.
>
> As I looked into this too a bit, and seemingly went for a different angle, I
> added a follow-up to also freeze non-deferred services on the deferred cycle,
> otherwise any LRM restart in the meantime (apt upgrade, manual restart) hangs
> in 'restart' mode waiting for an active_service_count going to zero that due to
> the deferred-mode CRM won't happen.
Thanks for the follow-ups and good catch that the frozen HA resources
are also accounted for the {basic,static} load accounting, good to have
a test cases for that! I'll also take more care to test with the other
shutdown modes in production!
>
> Bumped to 5.2.4.
>
> [1/2] test: add disarm test cases for idle lrms with transient ha resources
> commit: 54497ae43d5bdb3842eb6f32e0642da9deb7cf5b
> [2/2] make idle LRMs resolve leftover moving HA resources while disarmed
> commit: 9917559d01e60cc55622102bef2b8f5d87892d33
prev parent reply other threads:[~2026-05-20 8:08 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-19 14:38 [PATCH-SERIES ha-manager 0/2] make idle LRMs resolve leftover moving HA resources while disarmed Daniel Kral
2026-05-19 14:38 ` [PATCH ha-manager 1/2] test: add disarm test cases for idle lrms with transient ha resources Daniel Kral
2026-05-19 14:38 ` [PATCH ha-manager 2/2] make idle LRMs resolve leftover moving HA resources while disarmed Daniel Kral
2026-05-19 16:00 ` Fiona Ebner
2026-05-20 6:53 ` Daniel Kral
2026-05-20 7:48 ` Daniel Kral
2026-05-19 14:47 ` [PATCH-SERIES ha-manager 0/2] " Daniel Kral
2026-05-19 16:00 ` Fiona Ebner
2026-05-19 20:11 ` applied: " Thomas Lamprecht
2026-05-20 8:07 ` Daniel Kral [this message]
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=DINCM4LX3BLW.2PIMFP6GOVN3W@proxmox.com \
--to=d.kral@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
--cc=t.lamprecht@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