Implement oslo.versionedobjects indirection API

Registered by Grzegorz Grasza

Right now, oslo.versionedobjects are used for object serialization when transferred by RPC. However versionedobjects, in their full utilization, allow specifying an indirection_api (VersionedObjectIndirectionAPI), which implements object backporting and making RPC calls transparently, by invoking object methods.

Backporting an object to a previous version can be used to run different code versions at the same time, facilitating upgrades without downtime and enabling rolling upgrades.

Making the RPC calls more transparent simplifies code development, by making the calls identical on server and client sides.

More information about versionedobjects can be found in the original proposal:
https://wiki.openstack.org/wiki/ObjectProposal

The goal of this blueprint is to implement the indirection_api taking the Nova implementation as a model.

Blueprint information

Status:
Complete
Approver:
Adrian Otto
Priority:
Undefined
Drafter:
Grzegorz Grasza
Direction:
Approved
Assignee:
Grzegorz Grasza
Definition:
Approved
Series goal:
None
Implementation:
Implemented
Milestone target:
None
Started by
Grzegorz Grasza
Completed by
Grzegorz Grasza

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.