commit 8e7d795db5e614de6a3d8dd19ff26f869c8e9f9a
Author: Ruby Loo <email address hidden>
Date: Fri Jun 23 01:00:42 2017 -0400
Modifications for rolling upgrades
This contains some changes to conversions of objects during a rolling
upgrade.
This changes objects.base.IronicObject.convert_to_version() to have a new
parameter 'remove_unavail_fields': True (default) to remove fields that are
unavailable in the target version -- for serialization/deserialization
of objects. False to change unavailable fields as appropriate (for DB
interactions). The reason for doing this is to make sure that during
serialization (eg for RPC), that we don't include any object
fields that are not supported.
To make the code a bit more performant, we don't perform object
conversions when the API service is serializing the objects for RPC to
the conductor. This is because the conductor will always be running the
same or a newer release as the API service.
Reviewed: https:/ /review. openstack. org/476779 /git.openstack. org/cgit/ openstack/ ironic/ commit/ ?id=8e7d795db5e 614de6a3d8dd19f f26f869c8e9f9a
Committed: https:/
Submitter: Jenkins
Branch: master
commit 8e7d795db5e614d e6a3d8dd19ff26f 869c8e9f9a
Author: Ruby Loo <email address hidden>
Date: Fri Jun 23 01:00:42 2017 -0400
Modifications for rolling upgrades
This contains some changes to conversions of objects during a rolling
upgrade.
This changes objects. base.IronicObje ct.convert_ to_version( ) to have a new unavail_ fields' : True (default) to remove fields that are deserialization
parameter 'remove_
unavailable in the target version -- for serialization/
of objects. False to change unavailable fields as appropriate (for DB
interactions). The reason for doing this is to make sure that during
serialization (eg for RPC), that we don't include any object
fields that are not supported.
To make the code a bit more performant, we don't perform object
conversions when the API service is serializing the objects for RPC to
the conductor. This is because the conductor will always be running the
same or a newer release as the API service.
Change-Id: I6f77b24199412e 3489dd6f3dcf0f5 1ed04c5c7c0
Partial-Bug: #1526283