ironic/releasenotes/notes/exclude-current-conductor-from-offline-conductors-2e2ef401a8b7d7e8.yaml
Harald Jensås 4cf0147e86 Exclude current conductor from offline_conductors
In some cases the current conductor may have failed to updated
the heartbeat timestamp due to failure of resource starvation.
When this occurs the dbapi get_offline_conductors method will
include the current conductor in its return value.

In this scenario the conductor may end up forcefully remove
node reservations or allocations from itself, triggering takeover
which fail on-going operations.

This change adds a wrapper to exclude the current conductor.
The wrapper will log a warning to raise the issue.

Related-Bug: #1970484
Stroy: 2010016
Task: 45204
Change-Id: I6a8f38934b475f792433be6f0882540b82ca26c1
2022-04-28 10:28:26 +02:00

13 lines
616 B
YAML

---
fixes:
- |
Fixes an issue where a conductor would attempt local takeover. In case of
heartbeat failure due to resource starvation, the current conductor was
detected as offline when querying the database. In this scenario the
conductor would forcibly remove reservations of it's own and initiate
takeover. Current conductor is now excluded from the list of offline
conductors, so that local takeover does not occur for this case. A warning
is logged to highlight the potential resource starvation issue.
See bug: `2010016 <https://storyboard.openstack.org/#!/story/2010016>`_.