[NETVIRT-1137] NPE: Direct Exception (not failed Future) JobEntry{key='elaninterface-b3c18875-1a45-44ff-ae4b-73a3940b9deb... at org.opendaylight.netvirt.elan.internal.ElanInterfaceManager.programRemoteDmacFlow(ElanInterfaceManager.java:630) Created: 06/Mar/18  Updated: 12/Jun/18  Resolved: 12/Jun/18

Status: Resolved
Project: netvirt
Component/s: General
Affects Version/s: Oxygen
Fix Version/s: Oxygen-SR2, Fluorine

Type: Bug Priority: Medium
Reporter: Sam Hague Assignee: Dhiman Ghosh
Resolution: Done Votes: 0
Labels: csit:exception
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File odl_karaf.log.tar.xz    

 Description   

https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/netvirt-csit-1node-openstack-queens-upstream-stateful-oxygen/191/odl_1/odl1_karaf.log.gz

2018-03-06T07:08:11,049 | ERROR | ForkJoinPool-1-worker-1 | InterfacemgrProvider             | 254 - org.opendaylight.genius.interfacemanager-impl - 0.4.0.SNAPSHOT | Interface 914df977-6e90-4619-8d82-7f40c9b09a70 doesn't exist in config datastore
2018-03-06T07:08:11,049 | INFO  | ForkJoinPool-1-worker-1 | ElanInterfaceManager             | 348 - org.opendaylight.netvirt.elanmanager-impl - 0.6.0.SNAPSHOT | Programming remote dmac fa:16:3e:6d:35:6f on the newly added DPN 110780754426209 for elan eee8ae16-9b24-4d80-9e92-2fd5bb692b13
2018-03-06T07:08:11,050 | ERROR | ForkJoinPool-1-worker-1 | JobCoordinatorImpl               | 278 - org.opendaylight.infrautils.jobcoordinator-impl - 1.3.0.SNAPSHOT | Direct Exception (not failed Future) when executing job, won't even retry: JobEntry{key='elaninterface-b3c18875-1a45-44ff-ae4b-73a3940b9deb', mainWorker=InterfaceAddWorkerOnElanInterface [key=elaninterface-b3c18875-1a45-44ff-ae4b-73a3940b9deb, elanInterface=ElanInterface{getElanInstanceName=eee8ae16-9b24-4d80-9e92-2fd5bb692b13, getName=b3c18875-1a45-44ff-ae4b-73a3940b9deb, getStaticMacEntries=[StaticMacEntries{getIpPrefix=IpAddress [_ipv4Address=Ipv4Address [_value=10.1.1.2]], getMacAddress=PhysAddress [_value=fa:16:3e:42:67:df], augmentations={}}], augmentations={}}, elanInstance=ElanInstance{getElanInstanceName=eee8ae16-9b24-4d80-9e92-2fd5bb692b13, getElanSegments=[], getElanTag=5152, getMacTimeout=300, getSegmentType=class org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.rev150602.SegmentTypeVxlan, getSegmentationId=1031, isExternal=false, augmentations={}}, interfaceInfo=org.opendaylight.genius.interfacemanager.globals.VlanInterfaceInfo@4dee1227], rollbackWorker=null, retryCount=0/6, futures=null}
java.lang.NullPointerException: null
	at org.opendaylight.netvirt.elan.internal.ElanInterfaceManager.programRemoteDmacFlow(ElanInterfaceManager.java:630) [348:org.opendaylight.netvirt.elanmanager-impl:0.6.0.SNAPSHOT]
	at org.opendaylight.netvirt.elan.internal.ElanInterfaceManager.installEntriesForElanInterface(ElanInterfaceManager.java:839) [348:org.opendaylight.netvirt.elanmanager-impl:0.6.0.SNAPSHOT]
	at org.opendaylight.netvirt.elan.internal.ElanInterfaceManager.setupEntriesForElanInterface(ElanInterfaceManager.java:729) [348:org.opendaylight.netvirt.elanmanager-impl:0.6.0.SNAPSHOT]
	at org.opendaylight.netvirt.elan.internal.InterfaceAddWorkerOnElanInterface.call(InterfaceAddWorkerOnElanInterface.java:50) [348:org.opendaylight.netvirt.elanmanager-impl:0.6.0.SNAPSHOT]
	at org.opendaylight.netvirt.elan.internal.InterfaceAddWorkerOnElanInterface.call(InterfaceAddWorkerOnElanInterface.java:19) [348:org.opendaylight.netvirt.elanmanager-impl:0.6.0.SNAPSHOT]
	at org.opendaylight.infrautils.jobcoordinator.internal.JobCoordinatorImpl$MainTask.runWithUncheckedExceptionLogging(JobCoordinatorImpl.java:416) [278:org.opendaylight.infrautils.jobcoordinator-impl:1.3.0.SNAPSHOT]
	at org.opendaylight.infrautils.utils.concurrent.LoggingUncaughtThreadDeathContextRunnable.run(LoggingUncaughtThreadDeathContextRunnable.java:60) [284:org.opendaylight.infrautils.util:1.3.0.SNAPSHOT]
	at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402) [?:?]
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) [?:?]
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) [?:?]
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) [?:?]
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157) [?:?]


 Comments   
Comment by Jamo Luhrsen [ 15/May/18 ]

here's a recent job that has this.

Comment by Vivekanandan Narasimhan [ 16/May/18 ]

Since this issue need to first addressed in ELAN space, am re-assiging this to ELAN friends for triaging.

Comment by Dhiman Ghosh [ 17/May/18 ]

From the log, it show the interface 914df977-6e90-4619-8d82-7f40c9b09a70 is already removed by vpnmanager. 

2018-03-06T07:05:40,501 | INFO | ForkJoinPool-1-worker-2 | VpnInterfaceOpListener | 367 - org.opendaylight.netvirt.vpnmanager-impl - 0.6.0.SNAPSHOT | remove: Removed vpn operational data for interface 914df977-6e90-4619-8d82-7f40c9b09a70 on dpn 251355833227809 vpn 4ae8cd92-48ca-49b5-94e1-b2921a261441

Later while Elan interface manager calls itm for this interface, it (interfaceManager) returns null. We should add a null check in ElanInterfaceManager.

 

Comment by Dhiman Ghosh [ 17/May/18 ]

https://git.opendaylight.org/gerrit/#/c/72065/

 

 

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