← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1864675] Re: DHCP agent should prioritize new ports when sending RPC messages to server

 

Reviewed:  https://review.opendev.org/709824
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=113dfac6083c2bda36f5186e123e4e5c82fa8097
Submitter: Zuul
Branch:    master

commit 113dfac6083c2bda36f5186e123e4e5c82fa8097
Author: Brian Haley <bhaley@xxxxxxxxxx>
Date:   Tue Feb 25 15:01:47 2020 -0500

    Prioritize port create and update ready messages
    
    The DHCP agent prioritizes RPC messages based on the
    priority field send from neutron-server, but then groups
    them all in the same dhcp_ready_ports set when sending
    them back to the server to clear the provisioning block(s).
    
    Priority should be given to new and changed ports, since
    those are most likely to be associated with new instances
    which can fail to boot if they are not handled quickly when
    the agent is very busy, for example, right after it was
    restarted.
    
    Change-Id: Ib5074abadd7189bb4bdd5e46c677f1bfb071221e
    Closes-bug: #1864675


** 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/1864675

Title:
  DHCP agent should prioritize new ports when sending RPC messages to
  server

Status in neutron:
  Fix Released

Bug description:
  When a port is provisioned in the dhcp-agent, for example via a
  port_create, it will just be added to the dhcp_ready_ports set and
  sent to neutron-server in _dhcp_ready_ports_loop() by popping elements
  off the list.  So although it was prioritized when it was received, it
  is not prioritized when sent to the server to clear the provisioning
  block.

  It seems like these ports should be sent first, then others behind it
  if there is still room in the RPC message.  This could just be done
  with a second set() perhaps, unless we want to make it more
  complicated by using the priority sent from the server to place ports
  in different queues.

  This should decrease the time it takes to clear the port provisioning
  block when an agent is restarted and gets a port_create message, as it
  would help even if it was sent with PRIORITY_PORT_CREATE_HIGH to a
  single agent, since the one it chose could still be in the middle of a
  full sync.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1864675/+subscriptions


References