deleted_ports memory leak in dhcp agent

Bug #1732458 reported by Allain Legacy
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Medium
Rodolfo Alonso

Bug Description

The "deleted_ports" member variable in the DHCP NetworkCache [1] can potentially leak memory. As ports are deleted uuid values are added to this set but they are never removed. If ports are continuously added and deleted on a network this set will grow unbounded.

[1] neutron.agent.dhcp.agent.NetworkCache.deleted_ports

Changed in neutron:
status: New → Confirmed
importance: Undecided → Medium
Dongcan Ye (hellochosen)
Changed in neutron:
assignee: nobody → Dongcan Ye (hellochosen)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.openstack.org/521035

Changed in neutron:
status: Confirmed → In Progress
Changed in neutron:
assignee: Dongcan Ye (hellochosen) → Slawek Kaplonski (slaweq)
Changed in neutron:
assignee: Slawek Kaplonski (slaweq) → Manjeet Singh Bhatia (manjeet-s-bhatia)
Changed in neutron:
assignee: Manjeet Singh Bhatia (manjeet-s-bhatia) → Rodolfo Alonso (rodolfo-alonso-hernandez)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/521035
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=5754f00ea8734a894e0c7963d46244ba7dc0dbe7
Submitter: Zuul
Branch: master

commit 5754f00ea8734a894e0c7963d46244ba7dc0dbe7
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Tue Jun 25 12:10:44 2019 +0000

    [DHCP] Implement an aging method for deleted_ports

    When a port is deleted, is added to the NetworkCache instance
    as a "deleted port". This set of ports is used by the DHCP agent
    to mark out as "stalled" any message received with this port
    in the payload.

    Eventually, each deleted port should be dropped from this set
    depending on when was deleted. A timeout of 1 day has been defined
    in this patch to drop any older deleted port.

    A "loopingcall.FixedIntervalLoopingCall" executes the deleted port
    cleanup, with an execution interval of 1 day too.

    Co-Authored-By: Rodolfo Alonso Hernandez <email address hidden>
    Partial-Bug: #1732458

    Change-Id: I0bca03a67e8b0ff8f508cf59383340a13724e51c

Changed in neutron:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.