If a service gets remove from HA remove also its relocate and
restart trial count from LRM status and manager_status, else it
never gets deleted (leak).
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
my $ss = $self->{service_status};
+ foreach my $sid (keys %{$self->{restart_tries}}) {
+ delete $self->{restart_tries}->{$sid} if !$ss->{$sid};
+ }
+
foreach my $sid (keys %$ss) {
my $sd = $ss->{$sid};
next if !$sd->{node};
$haenv->log('info', "removing stale service '$sid' (no config)");
delete $ss->{$sid};
}
-
+
+ # remove stale relocation try entries
+ foreach my $sid (keys %{$ms->{relocate_trial}}) {
+ delete $ms->{relocate_trial}->{$sid} if !$ss->{$sid};
+ }
+
$self->update_crm_commands();
for (;;) {