New block device format is leaked to the code that is not ready to use it

Bug #1191913 reported by Nikola Đipanov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Nikola Đipanov

Bug Description

When https://review.openstack.org/#/c/29251/11 was done (which introduces a new block device format and rotuines to switch between the two formats), not enough attention was paid to the way compute API method 'get_instance_bdms' is used outside of the class itself.

For flexibilty reasons, it was decided to not change the method itself to return legacy format but to change all the places it was called. Sadly few of them were missed in the API layer (servers.py and contrib/volumes.py)

This applies to current master at d6ce08fd8f2b0bf7bcf16a8bea5cec864ab3779b

Changed in nova:
assignee: nobody → Nikola Đipanov (ndipanov)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

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

Changed in nova:
status: New → In Progress
Revision history for this message
Mark McLoughlin (markmc) wrote :

Would be nice to know what the implications of this was - i.e. what bugs people are seeing - but it sounds serious

Changed in nova:
importance: Undecided → High
Revision history for this message
Nikola Đipanov (ndipanov) wrote :

Hey Mark - here's how I caught the bug: https://review.openstack.org/#/c/33295/

It would definitely impact people trying to run close to trunk and using advanced volume-related functionality.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/33340
Committed: http://github.com/openstack/nova/commit/0b308ae4bebbe2e568c7b9ad73e141cc653a0101
Submitter: Jenkins
Branch: master

commit 0b308ae4bebbe2e568c7b9ad73e141cc653a0101
Author: Nikola Dipanov <email address hidden>
Date: Mon Jun 17 22:40:05 2013 +0200

    Add legacy flag to get_instance_bdms

    In change If30afdb59d4c4268b97d3d10270df2cc729a0c4c for flexibility
    reasons, it was decided to not change the method API.get_instance_bdms
    to return legacy format but to change all the places it was called.
    Sadly few of them were missed.

    This patch adds a legacy flag so that all use-cases still do what is
    expected unless explicitly changed to do otherwise.

    fixes bug: 1191913
    blueprint: improve-block-device-handling

    Change-Id: Iaebbb851e4a2a9cbee13fa271bf15d789db23f24

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → havana-2
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: havana-2 → 2013.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.