[openstack-dev] [heat] Rolling Upgrades
Zane Bitter
zbitter at redhat.com
Fri Oct 21 21:57:14 UTC 2016
On 21/10/16 08:37, Michał Dulko wrote:
>> > Finally, a note about Oslo versioned objects: they don't really help
>> > us. They work great for nova where there is just nova-conductor
>> > reading and writing to the DB, but we have multiple heat-engines doing
>> > that that need to be restarted in a rolling manner. See the references
>> > below for greater detail.
> They do help in case you're changing RPC arguments *content*. In
> particular they make it easier to modify schema of dict-like structures
> sent over RPC.
This is technically true, but there's a much simpler solution to that
which we already have: just don't change the content in
non-backward-compatible ways (i.e. you can add stuff but not
change/rename/remove stuff).
We have to do that anyway, because this is effectively our user
interface, so if we didn't we'd break clients. For that reason, we're
already much more strict about this than required to avoid this problem
in the RPC layer.
As Crag said, the problem we do have is when we add flags/arguments to a
message, how can we ensure that older versions of the engine still
interpret it correctly.
- ZB
More information about the OpenStack-dev
mailing list