AllocationCandidates.get_by_filters does not handle indirectly connected sharing RPs

Bug #1732731 reported by Balazs Gibizer on 2017-11-16
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Undecided
Chris Dent

Bug Description

Consider the following resource setup:
       CN1 (VCPU, MEMORY_MB)
     / \
    /agg1 \agg2
   / \
  SS1 ( SS2 (
   DISK_GB) IPV4_ADDRESS
              SRIOV_NET_VF)

Then we only request resources provided by SS1 and SS2 but not CN1. This case results in no allocation candidates returned.
I expect that in this case we get allocation candidates that contains SS1 and SS2.

See the reproduction test case in https://review.openstack.org/#/c/519601/

tags: added: placement
Chris Dent (cdent) wrote :

Changing the status to triaged since there are tests that exercise it.

Changed in nova:
status: New → Triaged

Fix proposed to branch: master
Review: https://review.openstack.org/533437

Changed in nova:
assignee: nobody → Tetsuro Nakamura (tetsuro0907)
status: Triaged → In Progress
Changed in nova:
assignee: Tetsuro Nakamura (tetsuro0907) → Chris Dent (cdent)
Changed in nova:
assignee: Chris Dent (cdent) → Tetsuro Nakamura (tetsuro0907)
Changed in nova:
assignee: Tetsuro Nakamura (tetsuro0907) → Eric Fried (efried)
Changed in nova:
assignee: Eric Fried (efried) → Tetsuro Nakamura (tetsuro0907)

Change abandoned by Tetsuro Nakamura (<email address hidden>) on branch: master
Review: https://review.openstack.org/533437
Reason: this is fixed in another way in the following commit, which enables getting nested providers as well as sharing providers.
patch: https://review.openstack.org/#/c/567508/
commit: 068c56f55dffb60e7dd15b35001c280660c79229

Changed in nova:
assignee: Tetsuro Nakamura (tetsuro0907) → Eric Fried (efried)
Changed in nova:
assignee: Eric Fried (efried) → Chris Dent (cdent)
Eric Fried (efried) wrote :

I can't tell if this bug was already fixed, as noted in comment #3. Can someone please update the status appropriately?

Reviewed: https://review.openstack.org/519601
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=042bc07fd87f3649929ab00429ba369f5378f07e
Submitter: Zuul
Branch: master

commit 042bc07fd87f3649929ab00429ba369f5378f07e
Author: Balazs Gibizer <email address hidden>
Date: Fri Dec 15 11:09:18 2017 +0100

    Test alloc_cands with indirectly sharing RPs

    There are two new test cases proposed in this patch about shared RPs.
    The generic setup in both cases are the following:

           CN1 (VCPU, MEMORY_MB)
         / \
        /agg1 \agg2
       / \
      SS1 ( SS2 (
       DISK_GB) IPV4_ADDRESS
                  SRIOV_NET_VF)

    In the first case we only request resources provided by SS1 and SS2
    but not CN1. In the second case we also request resources from CN1
    besides requesting resources from SS1 and SS2.

    The first case had been broken before nested providers are supported.
    But this is fixed now thanks to the following commit, which enables
    getting nested providers as well as sharing providers.
    patch: https://review.openstack.org/#/c/567508/
    commit: 068c56f55dffb60e7dd15b35001c280660c79229

    Closes-Bug: #1732731
    Change-Id: Iaf7993773b8f1f5cf3cb83c161b4c88d9368297b
    Co-Authored-By: Tetsuro Nakamura <email address hidden>

Changed in nova:
status: In Progress → Fix Released

This issue was fixed in the openstack/nova 18.0.0.0b3 development milestone.

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

Other bug subscribers