1、posts two requests at same time to delete same flavor's two extra_specs keys 2、the two requests all get success from nova 3、finds only one extra_specs keys be deleted that seems when handles the first delete request, the delete function of /nova/api/openstack/compute/flavors_extraspecs.py gets target flavor's all extra_specs info, and then saves the all extra_specs info again except the deleted one. see [1][2][3]: [1] https://github.com/openstack/nova/blob/master/nova/objects/flavor.py#L531 [2] https://github.com/openstack/nova/blob/master/nova/objects/flavor.py#L480 [3] https://github.com/openstack/nova/blob/master/nova/objects/flavor.py#L483
1、posts two requests at same time to delete same flavor's two extra_specs keys openstack/ compute/ flavors_ extraspecs. py gets target flavor's all extra_specs info, and then saves the all extra_specs info again except the deleted one. see [1][2][3]: /github. com/openstack/ nova/blob/ master/ nova/objects/ flavor. py#L531 /github. com/openstack/ nova/blob/ master/ nova/objects/ flavor. py#L480 /github. com/openstack/ nova/blob/ master/ nova/objects/ flavor. py#L483
2、the two requests all get success from nova
3、finds only one extra_specs keys be deleted
that seems when handles the first delete request, the delete function of /nova/api/
[1] https:/
[2] https:/
[3] https:/