Activity log for bug #1825537

Date Who What changed Old value New value Message
2019-04-19 15:15:41 Matt Riedemann bug added bug
2019-04-19 15:59:49 Matt Riedemann description This is purely based on code inspection right now, I need to write a functional test to recreate the issue. While triaging bug 1821594 it got me thinking about handling placement allocations during resize when something fails, which got me thinking about an older fix: https://review.openstack.org/#/c/543971/6/nova/compute/manager.py@4457 Looking back on that now, I think the revert during resize_instance is OK as long as the instance host/node has not changed, but I think doing it when finish_resize fails was probably a mistake because the instance.host in the nova db won't match where the allocations exist in placement. Before Pike this was fine since the ResourceTracker would heal the allocations in the update_available_resource periodic task, but we don't have that anymore. So this could result in an instance reported as being on the dest host in the nova database with the new flavor, which is where it will get rebuilt/rebooted/etc, but placement will be tracking the instance resource allocations using the old flavor against the source host, which is not where the instance is. Furthermore, if finish_resize fails, the instance should be in ERROR status and the user would likely try to hard reboot the instance to correct that status, which would happen on the dest host. While triaging bug 1821594 it got me thinking about handling placement allocations during resize when something fails, which got me thinking about an older fix: https://review.openstack.org/#/c/543971/6/nova/compute/manager.py@4457 Looking back on that now, I think the revert during resize_instance is OK as long as the instance host/node has not changed, but I think doing it when finish_resize fails was probably a mistake because the instance.host in the nova db won't match where the allocations exist in placement. Before Pike this was fine since the ResourceTracker would heal the allocations in the update_available_resource periodic task, but we don't have that anymore. So this could result in an instance reported as being on the dest host in the nova database with the new flavor, which is where it will get rebuilt/rebooted/etc, but placement will be tracking the instance resource allocations using the old flavor against the source host, which is not where the instance is. Furthermore, if finish_resize fails, the instance should be in ERROR status and the user would likely try to hard reboot the instance to correct that status, which would happen on the dest host.
2019-04-19 16:00:22 Matt Riedemann attachment added 0001-Add-functional-recreate-test-for-regression-bug-1825.patch https://bugs.launchpad.net/nova/+bug/1825537/+attachment/5257070/+files/0001-Add-functional-recreate-test-for-regression-bug-1825.patch
2019-04-19 16:00:36 Matt Riedemann nova: status New Triaged
2019-04-19 16:00:38 Matt Riedemann nova: importance Undecided Medium
2019-04-19 16:00:45 Matt Riedemann nominated for series nova/pike
2019-04-19 16:00:45 Matt Riedemann bug task added nova/pike
2019-04-19 16:00:45 Matt Riedemann nominated for series nova/stein
2019-04-19 16:00:45 Matt Riedemann bug task added nova/stein
2019-04-19 16:00:45 Matt Riedemann nominated for series nova/queens
2019-04-19 16:00:45 Matt Riedemann bug task added nova/queens
2019-04-19 16:00:45 Matt Riedemann nominated for series nova/rocky
2019-04-19 16:00:45 Matt Riedemann bug task added nova/rocky
2019-04-19 16:01:48 Matt Riedemann nova/pike: status New Confirmed
2019-04-19 16:01:51 Matt Riedemann nova/queens: status New Confirmed
2019-04-19 16:01:53 Matt Riedemann nova/stein: status New Confirmed
2019-04-19 16:01:55 Matt Riedemann nova/rocky: status New Confirmed
2019-04-19 16:01:58 Matt Riedemann nova/queens: importance Undecided Medium
2019-04-19 16:02:00 Matt Riedemann nova/stein: importance Undecided Medium
2019-04-19 16:02:04 Matt Riedemann nova/rocky: importance Undecided Medium
2019-04-19 16:02:13 Matt Riedemann nova/pike: importance Undecided Medium
2019-04-19 16:57:25 Matt Riedemann nova: assignee Matt Riedemann (mriedem)
2019-04-19 20:21:42 Matt Riedemann attachment added Functional recreate test. https://bugs.launchpad.net/nova/+bug/1825537/+attachment/5257126/+files/0001-Add-functional-recreate-test-for-regression-bug-1825.patch
2019-04-19 20:22:02 Matt Riedemann attachment removed 0001-Add-functional-recreate-test-for-regression-bug-1825.patch https://bugs.launchpad.net/nova/+bug/1825537/+attachment/5257070/+files/0001-Add-functional-recreate-test-for-regression-bug-1825.patch
2019-04-19 20:22:24 Matt Riedemann attachment added Fix patch. https://bugs.launchpad.net/nova/+bug/1825537/+attachment/5257127/+files/0002-Drop-source-node-allocations-if-finish_resize-fails.patch
2019-04-20 22:08:05 OpenStack Infra nova: status Triaged In Progress
2019-06-24 16:45:09 OpenStack Infra nova/stein: status Confirmed In Progress
2019-06-24 16:45:09 OpenStack Infra nova/stein: assignee Matt Riedemann (mriedem)
2019-06-26 06:43:47 OpenStack Infra nova: status In Progress Fix Released
2019-07-04 18:03:26 OpenStack Infra tags placement resize in-stable-stein placement resize
2019-07-04 18:03:37 OpenStack Infra nova/stein: status In Progress Fix Committed
2019-07-05 16:16:01 OpenStack Infra nova/rocky: status Confirmed In Progress
2019-07-05 16:16:01 OpenStack Infra nova/rocky: assignee Matt Riedemann (mriedem)
2019-08-01 19:49:07 OpenStack Infra tags in-stable-stein placement resize in-stable-rocky in-stable-stein placement resize
2019-08-08 17:02:33 OpenStack Infra nova/rocky: status In Progress Fix Committed
2019-09-17 19:19:15 OpenStack Infra nova/queens: status Confirmed In Progress
2019-09-17 19:19:15 OpenStack Infra nova/queens: assignee Matt Riedemann (mriedem)
2019-10-17 23:18:06 OpenStack Infra tags in-stable-rocky in-stable-stein placement resize in-stable-queens in-stable-rocky in-stable-stein placement resize
2019-10-18 18:17:48 OpenStack Infra nova/queens: status In Progress Fix Committed