← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1988323] Re: "port" resource is not deleted if child "ml2_port_bindings" DB register does not exist

 

Reviewed:  https://review.opendev.org/c/openstack/neutron/+/857490
Committed: https://opendev.org/openstack/neutron/commit/2f0919f7df9a7e6a7e22c428e40f324fff88ef24
Submitter: "Zuul (22348)"
Branch:    master

commit 2f0919f7df9a7e6a7e22c428e40f324fff88ef24
Author: Rodolfo Alonso Hernandez <ralonsoh@xxxxxxxxxx>
Date:   Thu Sep 1 12:22:43 2022 +0200

    Accept a port deletion with missing port binding information
    
    If the database "port" child register "ml2_port_bindings" has been
    manually deleted from the database, now is possible to delete the
    Neutron Port resource (that implies the "port" database register and
    all other child registers)
    
    Before this patch, the port deletion CLI command succeeded (no exception
    was raised) but the Port resource was not deleted.
    
    Closes-Bug: #1988323
    Change-Id: I02de276d0cd8e4ae27355d4aee5f48e92634f318


** Changed in: neutron
       Status: In Progress => Fix Released

-- 
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:
  Fix Released

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



References