Public bug reported: create_ha_port_and_bind starts a transaction and then calls add_ha_port.
add_ha_port creates a port via the core plugin API and then tries to create a binding. If the binding fails, it tries to delete the port via the core plugin API. However, when called during the transaction in create_ha_port_and_bind, the delete_port call will fail because the transaction will already be in the rolled back state[1]. This failure mode happened to sort of work by accident when running the reference implementation because the DB state would be rolled back the the port would be removed. However, the agents wouldn't be notified and any mechanism drivers that allocated backend resources for the port would not release them. It also resulted in ugly tracebacks. 1. http://paste.openstack.org/show/482652/ ** Affects: neutron Importance: Medium Assignee: Kevin Benton (kevinbenton) Status: In Progress ** Changed in: neutron Assignee: (unassigned) => Kevin Benton (kevinbenton) ** Changed in: neutron Importance: Undecided => Medium -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1529037 Title: l3 ha add_ha_port rollback is mostly broken in create_ha_port_and_bind Status in neutron: In Progress Bug description: create_ha_port_and_bind starts a transaction and then calls add_ha_port. add_ha_port creates a port via the core plugin API and then tries to create a binding. If the binding fails, it tries to delete the port via the core plugin API. However, when called during the transaction in create_ha_port_and_bind, the delete_port call will fail because the transaction will already be in the rolled back state[1]. This failure mode happened to sort of work by accident when running the reference implementation because the DB state would be rolled back the the port would be removed. However, the agents wouldn't be notified and any mechanism drivers that allocated backend resources for the port would not release them. It also resulted in ugly tracebacks. 1. http://paste.openstack.org/show/482652/ To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1529037/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp