"port" resource is not deleted if child "ml2_port_bindings" DB register does not exist
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
Low
|
Rodolfo Alonso |
Bug Description
The "port" database register (and any other related register) are not deleted from the database if the child "ml2_port_bindings" register is not present.
When a "port" database register is created, a "ml2_port_bindings" child register is created too. Initially, the "ml2_port_bindings" is set to unbound. The Neutron server deletes the "ml2_port_bindings" register when the "port" register is deleted (for example, when the user executes "openstack port delete <port>").
However, we have seen a user that has manually deleted the "ml2_port_bindings" register. In this case when the port is show, we can see all the binding related attributes filled with "None" [1].
If we manually try to delete this port using the CLI, the OSC does not return any exception, but the port is still in the database.
I know this situation is not part of the normal operation, it implies a manual manipulation of the database. However, in this case we should:
1) Raise an exception saying that the Neutron API is not deleting this port.
2) Actually delete the register (I'm in favor of this one).
Changed in neutron: | |
assignee: | nobody → Rodolfo Alonso (rodolfo-alonso-hernandez) |
importance: | Undecided → Low |
Fix proposed to branch: master /review. opendev. org/c/openstack /neutron/ +/857490
Review: https:/