[NETVIRT-1000] Transaction Leaks in neutronvpn, fibmanager & vpnmanager Created: 17/Nov/17  Updated: 20/Nov/17  Resolved: 20/Nov/17

Status: Resolved
Project: netvirt
Component/s: None
Affects Version/s: Nitrogen, Carbon, Oxygen
Fix Version/s: Nitrogen, Carbon, Oxygen

Type: Bug Priority: High
Reporter: Michael Vorburger Assignee: Stephen Kitt
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Blocks
blocks NETVIRT-883 Umbrella parent issue for grouping al... Resolved
blocks NETVIRT-985 java.lang.OutOfMemoryError: Java heap... Resolved
Relates
relates to NETVIRT-1010 OOM and other memory issues Resolved

 Description   

As found in NETVIRT-985, here are transactions opened in netvirt itself which are apparently never closed, roughly sorted in order of importance, based on number of open TXs = likelyness to cause OOM: (The class line numbers refer to stable/carbon; and the list has already filtered out and omits leaks that are only a few lines apart which occur when several write transactions are opened together for separate shards incl. config/oper.)

493x transactions opened here, which are not closed:
  org.opendaylight.netvirt.neutronvpn.NeutronPortChangeListener.lambda$handleNeutronPortUpdated$5(NeutronPortChangeListener.java:462)

356x transactions opened here, which are not closed:
  org.opendaylight.netvirt.fibmanager.VrfEntryListener.lambda$manageRemoteRouteOnDPN$18(VrfEntryListener.java:1651)

  75x transactions opened here, which are not closed:
    org.opendaylight.netvirt.vpnmanager.TunnelEndPointChangeListener.lambda$add$0(TunnelEndPointChangeListener.java:94)

  73x transactions opened here, which are not closed:
    org.opendaylight.netvirt.fibmanager.VrfEntryListener$CleanupVpnInterfaceWorker.call(VrfEntryListener.java:1242)
    org.opendaylight.netvirt.fibmanager.VrfEntryListener$CleanupVpnInterfaceWorker.call(VrfEntryListener.java:1222)

  48x transactions opened here, which are not closed:
    org.opendaylight.netvirt.vpnmanager.InterfaceStateChangeListener.lambda$add$0(InterfaceStateChangeListener.java:74)

  43x transactions opened here, which are not closed:
    org.opendaylight.netvirt.vpnmanager.InterfaceStateChangeListener.lambda$update$2(InterfaceStateChangeListener.java:220)

  9x transactions opened here, which are not closed:
    org.opendaylight.netvirt.vpnmanager.InterfaceStateChangeListener.lambda$remove$1(InterfaceStateChangeListener.java:153)

  8x transactions opened here, which are not closed:
    org.opendaylight.netvirt.neutronvpn.NeutronPortChangeListener.lambda$handleNeutronPortCreated$1(NeutronPortChangeListener.java:365)

  8x transactions opened here, which are not closed:
    org.opendaylight.netvirt.fibmanager.VrfEntryListener$CleanupVpnInterfaceWorker.call(VrfEntryListener.java:1242)
    org.opendaylight.netvirt.fibmanager.VrfEntryListener$CleanupVpnInterfaceWorker.call(VrfEntryListener.java:1222)

  3x transactions opened here, which are not closed:
    org.opendaylight.netvirt.vpnmanager.VpnInterfaceManager.lambda$remove$7(VpnInterfaceManager.java:1158)


 Comments   
Comment by Stephen Kitt [ 20/Nov/17 ]

org.opendaylight.netvirt.neutronvpn.NeutronPortChangeListener.lambda$handleNeutronPortUpdated$5(NeutronPortChangeListener.java:462)

is dealt with.

Comment by Michael Vorburger [ 20/Nov/17 ]

> org.opendaylight.netvirt.neutronvpn.NeutronPortChangeListener.lambda$handleNeutronPortUpdated$5

==> https://git.opendaylight.org/gerrit/#/c/65708/. More coming from skitt, see https://git.opendaylight.org/gerrit/#/q/topic:NETVIRT-985+owner:skitt under overall https://git.opendaylight.org/gerrit/#/q/topic:NETVIRT-985.

Comment by Stephen Kitt [ 20/Nov/17 ]

These are all fixed with the patched in https://git.opendaylight.org/gerrit/#/q/topic:NETVIRT-985 on all three branches.

Generated at Wed Feb 07 20:22:59 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.