← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1289048] Re: Ironic nova driver spawn() makes too many redundant calls

 

** Changed in: nova
       Status: Confirmed => Won't Fix

-- 
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/1289048

Title:
  Ironic nova driver spawn() makes too many redundant calls

Status in Ironic:
  Invalid
Status in OpenStack Compute (nova):
  Won't Fix

Bug description:
  The nova virt driver has a scale issue in that it makes way too many
  API calls, especially on behalf of spawn. I have submitted a review to
  remove at least 2 API calls by not having to re-query the node when
  plugging vifs.  But after that, we are still left with for spawn:

  spawn() gets node from Ironic
  spawn() updates node
  spawn() -> _add_driver_fields() updates node 'n' times where 'n' is # of required pxe fields
  spawn() makes a node validate call
  spawn() -> _plug_vifs() -> _unplug_vifs() lists ports.
  spawn() -> _plug_vifs() -> _unplug_vifs() makes 'n' calls to update ports where 'n' is number of ports.
  spawn() -> _plug_vifs() lists ports.
  spawn() -> _plug_vifs() makes 'n' calls to update ports where 'n' is number of ports.
  spawn() updates node to set 'active' provision state

  We need to figure out a way to make batch calls for some of these,
  IMO.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ironic/+bug/1289048/+subscriptions