Conductor returns new instance objects to older clients in list operations

Bug #1254902 reported by Dan Smith
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Undecided
Unassigned

Bug Description

Conductor will return new Instance objects to older clients when they do actions on the InstanceList object. This is because we only consider the version of their InstanceList object, and happily fill it with objects newer than they can handle.

Dan Smith (danms)
tags: added: unified-objects
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/58398
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=ff221c6cc61f7b98b62462ab4f0e0e1cf691a9a8
Submitter: Jenkins
Branch: master

commit ff221c6cc61f7b98b62462ab4f0e0e1cf691a9a8
Author: Dan Smith <email address hidden>
Date: Mon Nov 25 14:48:26 2013 -0800

    Require List objects to be able to backlevel their contents

    Right now, a client declares its supported version of a given object
    automatically in the remoted calls it makes to conductor. However,
    in the case of things like InstanceList.get_by_foo(), they are
    reporting the version of their InstanceList object, not their
    Instance object. Conductor fills a version-matching InstanceList
    object with brand new Instance objects, which the client, of course,
    barfs on.

    There may be a better way to handle this going forward, but for now,
    stop the bleeding by requiring a version bump to the corresponding
    List object whenever the object type it contains takes a version
    bump. This adds a test to validate that all the objects registered
    have a suitable mapping for the current version in the tree.

    Since this actually caused a breakage in the Instance object
    recently, this also bumps the InstanceList version so that
    conductors running this commit (or later) will properly send
    version 1.9 Instance objects to Havana clients and version 1.10+
    to newer ones.

    Change-Id: I2668dead4784fbd0411d1b6372a9a8006eeb2e84
    Related-Bug: #1258256
    Closes-Bug: #1254902

Changed in nova:
status: New → Fix Committed
Changed in nova:
milestone: none → icehouse-2
Thierry Carrez (ttx)
Changed in nova:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: icehouse-2 → 2014.1
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.