← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1367007] [NEW] Ironic driver requires extra_specs

 

Public bug reported:

Comments on review https://review.openstack.org/#/c/111429/ suggested
that the Ironic driver should use

  flavor = instance.get_flavor()

instead of

  flavor = flavor_obj.Flavor.get_by_id(context,
instance['instance_type_id'])

During the crunch to land things before feature freeze, these were
integrated in the proposal to the Nova tree prior to being landed in the
Ironic tree (the only place where they would have been tested). These
changes actually broke the driver, since it requires access to
flavor['extra_specs'] -- which is not present in the instance's cached
copy of the flavor.

This problem was discovered when attempting to update the devstack
config and begin testing with the driver from the Nova tree (rather than
the copy of the driver in the Ironic tree). That patch is here:

https://review.openstack.org/#/c/119844/

The error being encountered can be seen both on the devstack patch (eg,
in the Nova code)

http://logs.openstack.org/44/119844/2/check/check-tempest-dsvm-virtual-
ironic-nv/ce443f8/logs/screen-n-cpu.txt.gz

and in the back-port of the same code to Ironic here:

http://logs.openstack.org/65/119165/3/check/check-tempest-dsvm-virtual-
ironic/c161a89/logs/screen-n-cpu.txt.gz#_2014-09-08_08_41_06_821


==========
Proposed fix
==========

Fetch flavor['extra_specs'] on demand, when needed by the Ironic driver.

** Affects: nova
     Importance: Undecided
     Assignee: Devananda van der Veen (devananda)
         Status: New

** Changed in: nova
     Assignee: (unassigned) => Devananda van der Veen (devananda)

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

Title:
  Ironic driver requires extra_specs

Status in OpenStack Compute (Nova):
  New

Bug description:
  Comments on review https://review.openstack.org/#/c/111429/ suggested
  that the Ironic driver should use

    flavor = instance.get_flavor()

  instead of

    flavor = flavor_obj.Flavor.get_by_id(context,
  instance['instance_type_id'])

  During the crunch to land things before feature freeze, these were
  integrated in the proposal to the Nova tree prior to being landed in
  the Ironic tree (the only place where they would have been tested).
  These changes actually broke the driver, since it requires access to
  flavor['extra_specs'] -- which is not present in the instance's cached
  copy of the flavor.

  This problem was discovered when attempting to update the devstack
  config and begin testing with the driver from the Nova tree (rather
  than the copy of the driver in the Ironic tree). That patch is here:

  https://review.openstack.org/#/c/119844/

  The error being encountered can be seen both on the devstack patch
  (eg, in the Nova code)

  http://logs.openstack.org/44/119844/2/check/check-tempest-dsvm-
  virtual-ironic-nv/ce443f8/logs/screen-n-cpu.txt.gz

  and in the back-port of the same code to Ironic here:

  http://logs.openstack.org/65/119165/3/check/check-tempest-dsvm-
  virtual-
  ironic/c161a89/logs/screen-n-cpu.txt.gz#_2014-09-08_08_41_06_821

  
  ==========
  Proposed fix
  ==========

  Fetch flavor['extra_specs'] on demand, when needed by the Ironic
  driver.

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


Follow ups

References