DescriptionFabrizio Soppelsa
2018-10-09 10:13:06 UTC
Description of problem:
Heat delete does not work if router has more than one subnet interface attached
Version-Release number of selected component (if applicable):
10
How reproducible:
Delete a stack like this:
...
cfme_router:
type: OS::Neutron::Router
properties:
admin_state_up: true
name: cfme_router
external_gateway_info:
network: { get_param: public_net }
cfme_router_int0:
type: OS::Neutron::RouterInterface
properties:
router_id: { get_resource: cfme_router }
subnet_id: { get_resource: cfme_subnet_internal }
cfme_router_int2:
type: OS::Neutron::RouterInterface
properties:
router_id: { get_resource: cfme_router }
subnet_id: { get_resource: cfme_subnet_internal2 }
cfme_router_int3:
type: OS::Neutron::RouterInterface
properties:
router_id: { get_resource: cfme_router }
subnet_id: { get_resource: cfme_subnet_internal3 }
Actual results:
Failure with:
2018-10-02 16:21:10.404 789127 ERROR heat.engine.resource Conflict: Unable to complete operation on subnet a366bb7e-bd1f-477e-8f36-0efadfbded49: One or more ports have an IP allocation from this subnet.
Expected results:
Stack deleted and all resources wiped correctly.
Additional info:
Not sure this is an expected behavior.
Looks like https://bugs.launchpad.net/heat/+bug/1709774. It's neutron DVR issue where multiple csnat ports are created (retries if one is down) and not deleted when the router is deleted.
Fixed in queens upstream, but does not look like it's backported beyond pike (RHOS12).
Comment 3Fabrizio Soppelsa
2018-10-15 09:16:32 UTC
Hi Rabi,
ack. Do you know if we can workaround/mitigate this, and how?
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/RHSA-2019:0916