Public bug reported: 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). [1]https://paste.opendev.org/show/bp2PPtNVN3ln4PReuByP/ ** Affects: neutron Importance: Low Assignee: Rodolfo Alonso (rodolfo-alonso-hernandez) Status: New ** Changed in: neutron Assignee: (unassigned) => Rodolfo Alonso (rodolfo-alonso-hernandez) ** Changed in: neutron Importance: Undecided => Low -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1988323 Title: "port" resource is not deleted if child "ml2_port_bindings" DB register does not exist Status in neutron: New 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). [1]https://paste.opendev.org/show/bp2PPtNVN3ln4PReuByP/ To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1988323/+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