Public bug reported: There are a few places in the scheduler report client that don't account for shared resource providers, like a shared storage pool.
1. https://github.com/openstack/nova/blob/09f0795fe0f5d043593f5ae55a6ec5f6298ba5ba/nova/scheduler/client/report.py#L921 That's used in _allocate_for_instance when it compares the current allocations for the instance vs the allocations that the compute node thinks it has: https://github.com/openstack/nova/blob/09f0795fe0f5d043593f5ae55a6ec5f6298ba5ba/nova/scheduler/client/report.py#L929 If those are different, the compute node allocations are going to overwrite the current allocations for the instance, which could include a shared storage allocation created by the scheduler. This is particularly bad since it happens during the update_available_resource periodic task that happens in the compute service / resource tracker. 2. https://github.com/openstack/nova/blob/09f0795fe0f5d043593f5ae55a6ec5f6298ba5ba/nova/scheduler/client/report.py#L1024 This is related to #1 and called from the same code in #1, the _allocate_for_instance method which is the one comparing the current allocations for the instance to the ones that the compute node things it needs, which doesn't account for shared resource providers. ** Affects: nova Importance: High Status: Confirmed ** Tags: compute pike-rc-potential placement resource-tracker ** Summary changed: - Scheduler report client is not account for shared resource providers + Scheduler report client does not account for shared resource providers -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1707256 Title: Scheduler report client does not account for shared resource providers Status in OpenStack Compute (nova): Confirmed Bug description: There are a few places in the scheduler report client that don't account for shared resource providers, like a shared storage pool. 1. https://github.com/openstack/nova/blob/09f0795fe0f5d043593f5ae55a6ec5f6298ba5ba/nova/scheduler/client/report.py#L921 That's used in _allocate_for_instance when it compares the current allocations for the instance vs the allocations that the compute node thinks it has: https://github.com/openstack/nova/blob/09f0795fe0f5d043593f5ae55a6ec5f6298ba5ba/nova/scheduler/client/report.py#L929 If those are different, the compute node allocations are going to overwrite the current allocations for the instance, which could include a shared storage allocation created by the scheduler. This is particularly bad since it happens during the update_available_resource periodic task that happens in the compute service / resource tracker. 2. https://github.com/openstack/nova/blob/09f0795fe0f5d043593f5ae55a6ec5f6298ba5ba/nova/scheduler/client/report.py#L1024 This is related to #1 and called from the same code in #1, the _allocate_for_instance method which is the one comparing the current allocations for the instance to the ones that the compute node things it needs, which doesn't account for shared resource providers. To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1707256/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp