Accurately clean up ARQs resources during build_instances() in conductor

Bug #1872934 reported by Brin Zhang on 2020-04-15
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Low
Brin Zhang

Bug Description

While we build_instances() we should cleanup arqs if the _create_and_bind_arqs() failed.

In _cleanup_when_reschedule_fails()[1] we clean the arqs if _create_and_bind_arqs() failed, but I think we just only clean it at L847 if the _create_and_bind_arqs() failed [3]. If we add "compute_utils.delete_arqs_if_needed(context, instance)"[2] in _cleanup_when_reschedule_fails()[1], once we call _cleanup_when_reschedule_fails() it will be cleanup arqs with 'accel:device_profile' in instance's flavor, I think that will increase Nova's call to Cyborg (by cyborgclinet).

We should reduce the number of calls to Cyborg with cyborgclient.

[1]https://opendev.org/openstack/nova/src/branch/master/nova/conductor/manager.py#L582

[2]https://opendev.org/openstack/nova/src/branch/master/nova/conductor/manager.py#L598

[3]https://opendev.org/openstack/nova/src/branch/master/nova/conductor/manager.py#L848-L849

Brin Zhang (zhangbailin) on 2020-04-15
Changed in nova:
assignee: nobody → Brin Zhang (zhangbailin)
tags: added: cyborg
Changed in nova:
status: New → Confirmed
importance: Undecided → Low
Changed in nova:
importance: Low → Wishlist
Changed in nova:
importance: Wishlist → Low

Fix proposed to branch: master
Review: https://review.opendev.org/720439

Changed in nova:
assignee: Brin Zhang (zhangbailin) → Wenping Song (wenping1)
status: Confirmed → In Progress
Changed in nova:
assignee: Wenping Song (wenping1) → Brin Zhang (zhangbailin)

Change abandoned by Wenping Song (<email address hidden>) on branch: master
Review: https://review.opendev.org/720439

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers