Bug 1450965

Summary: Overcloud Upgrade [ RHOS-9 to RHOS-10 ] fails with no error
Product: Red Hat OpenStack Reporter: Zane Bitter <zbitter>
Component: openstack-heatAssignee: mathieu bultel <mbultel>
Status: CLOSED ERRATA QA Contact: Marius Cornea <mcornea>
Severity: high Docs Contact:
Priority: unspecified    
Version: 11.0 (Ocata)CC: augol, ccamacho, ipetrova, mbultel, mburns, mlopes, morazi, mschuppe, pablo.iranzo, rhel-osp-director-maint, sbaker, shardy, srevivo, therve, zbitter
Target Milestone: z1Keywords: Triaged, ZStream
Target Release: 11.0 (Ocata)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-heat-8.0.0-9.el7ost Doc Type: Bug Fix
Doc Text:
Cause: In a legacy (non-convergence_engine) stack update, resource definitions are copied into the existing template one at a time as resources are updated. The full template is copied at the end of the update. If the new template is of a newer version than the old and contains resources that use features (e.g. intrinsic functions) not available in the old version, then those resources definitions are unreadable in the context of the old template. Consequence: When updating a legacy stack using a newer version of the template format, if the update failed at some point after updating/creating one or more resources relying on features not included in the old template version, then Heat would be unable to load and further update the stack. Fix: When the old an new templates have differing versions, we now use the lexicographically highest version for both. Result: After an update failure, the partially updated template will generally be interpreted using the latter of the two template versions. So 'ocata' instead of 'newton'; '2017-02-24' instead of '2016-10-14'; 'ocata' instead of (the equivalent) '2017-02-24'. The exception is that e.g. the older 'newton' will be preferred instead of the newer '2017-02-24' - for this reason it is recommended not to switch from using release names to dates in template versions. Switching from dates to release names works correctly when moving to later versions.
Story Points: ---
Clone Of: 1443186 Environment:
Last Closed: 2017-07-19 17:04:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1443186    
Bug Blocks:    

Description Zane Bitter 2017-05-15 13:19:21 UTC
+++ This bug was initially created as a clone of Bug #1443186 +++

--- Additional comment from mathieu bultel on 2017-05-15 05:41:45 EDT ---

Hi,

The issue is fixed in heat with:
https://review.openstack.org/458497
and cherry picked into ocata and newton:
https://review.openstack.org/#/c/464585/
https://review.openstack.org/464584

And for OSP 10:
https://code.engineering.redhat.com/gerrit/#/c/106170/

So this fix, once release into the next 10 puddle, should prevent from this failure in the future.

Comment 5 errata-xmlrpc 2017-07-19 17:04:31 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2017:1779