Ironic builds fail when landing on a cleaning node, it doesn't try to reschedule
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Low
|
John Garbutt |
Bug Description
In a happy world, placement reserved gets updated when a node is not availabe any more, so the scheduler doesn't pick that one, everyone is happy.
Howerver, as is fairly well known, it takes a while for Nova to notice if a node has been marked as in maintenance or if it has started cleaning due to the instance now having been deleted, and you can still reach a node in a bad state.
This actually fails hard when setting the instance uuid, as expected here:
https:/
You get a conflict errors, as the ironic node is in a transitioning state (i.e. its not actually available any more).
When people are busy rebuilding large numbers of nodes, they tend to hit this problem, even when only building when you know there available nodes, you sometimes pick the ones you just deleted.
In an idea world this would trigger a re-schedule, a bit like when you hit errors in the resource tracker such as ComputeResource
Changed in nova: | |
status: | New → In Progress |
assignee: | nobody → John Garbutt (johngarbutt) |
importance: | Undecided → Low |
tags: | added: ironic |
description: | updated |
Fix proposed to branch: master /review. opendev. org/c/openstack /nova/+ /842478
Review: https:/