[OPNFLWPLUG-1034] NullPointerException: null at org.opendaylight.openflowplugin.impl.services.AbstractRequestCallback.onFailure(AbstractRequestCallback.java:72) Created: 17/Sep/18  Updated: 04/Oct/18  Resolved: 04/Oct/18

Status: Resolved
Project: OpenFlowPlugin
Component/s: openflowjava
Affects Version/s: None
Fix Version/s: Oxygen-SR4, Fluorine-SR1, Neon

Type: Bug Priority: Medium
Reporter: Sam Hague Assignee: Gobinath Suganthan
Resolution: Done Votes: 0
Labels: csit:3node, csit:exception
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File odl1_karaf.log.tar.xz    
Issue Links:
Relates
relates to OPNFLWPLUG-1035 Not able to set MASTER role on device... Resolved
relates to OPNFLWPLUG-1033 org.opendaylight.openflowplugin.appli... Resolved
Epic Link: Clustering Stability

 Description   

During 3node testing using graceful start and stop the following exception is seen. Graceful start and stop means using the bin/stop and start commands to stop and start ODL rather than using kill -9. This means there is an orderly stop to the bundles where each bundle is destroyed. Some bundles in openflowplugin are destroyed and the exceptions start.

The flow is all three ODLs are up. Then shutdown ODL1 via bin/stop. Bring up ODL1 via bin/start and then the exceptions start.

https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/builder-copy-sandbox-logs/408/shague-haproxy-netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-neon/8/odl_1/odl1_karaf.log.gz

2018-09-17T16:55:20,609 | WARN  | pool-69-thread-1 | OutboundQueueEntry               | 384 - org.opendaylight.openflowplugin.openflowjava.openflow-protocol-impl - 0.8.0.SNAPSHOT | Can't commit a completed message.
2018-09-17T16:55:20,610 | WARN  | pool-69-thread-1 | HashedWheelTimer                 | 55 - io.netty.common - 4.1.22.Final | An exception was thrown by TimerTask.java.lang.NullPointerException: null	at org.opendaylight.openflowplugin.impl.services.AbstractRequestCallback.onFailure(AbstractRequestCallback.java:72) ~[?:?]	at org.opendaylight.openflowjava.protocol.impl.core.connection.OutboundQueueEntry.commit(OutboundQueueEntry.java:57) ~[384:org.opendaylight.openflowplugin.openflowjava.openflow-protocol-impl:0.8.0.SNAPSHOT]	at org.opendaylight.openflowjava.protocol.impl.core.connection.StackedOutboundQueue.commitEntry(StackedOutboundQueue.java:36) ~[384:org.opendaylight.openflowplugin.openflowjava.openflow-protocol-impl:0.8.0.SNAPSHOT]	at org.opendaylight.openflowjava.protocol.impl.core.connection.AbstractStackedOutboundQueue.commitEntry(AbstractStackedOutboundQueue.java:60) ~[384:org.opendaylight.openflowplugin.openflowjava.openflow-protocol-impl:0.8.0.SNAPSHOT]	at org.opendaylight.openflowplugin.impl.connection.OutboundQueueProviderImpl.commitEntry(OutboundQueueProviderImpl.java:81) ~[?:?]	at org.opendaylight.openflowplugin.impl.services.AbstractService.handleServiceCall(AbstractService.java:165) ~[?:?]	at org.opendaylight.openflowplugin.impl.services.AbstractService.handleServiceCall(AbstractService.java:110) ~[?:?]	at org.opendaylight.openflowplugin.impl.services.RoleService.getGenerationIdFromDevice(RoleService.java:69) ~[?:?]	at org.opendaylight.openflowplugin.impl.services.sal.SalRoleServiceImpl.tryToChangeRole(SalRoleServiceImpl.java:84) ~[?:?]	at org.opendaylight.openflowplugin.impl.services.sal.SalRoleServiceImpl.setRole(SalRoleServiceImpl.java:78) ~[?:?]	at org.opendaylight.openflowplugin.impl.role.RoleContextImpl.sendRoleChangeToDevice(RoleContextImpl.java:165) ~[?:?]	at org.opendaylight.openflowplugin.impl.role.RoleContextImpl.makeDeviceSlave(RoleContextImpl.java:144) ~[?:?]	at org.opendaylight.openflowplugin.impl.role.RoleContextImpl.lambda$new$0(RoleContextImpl.java:70) ~[?:?]	at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:663) [55:io.netty.common:4.1.22.Final]	at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:738) [55:io.netty.common:4.1.22.Final]	at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:466) [55:io.netty.common:4.1.22.Final]	at java.lang.Thread.run(Thread.java:748) [?:?]


 Comments   
Comment by Gobinath Suganthan [ 19/Sep/18 ]

shague I ve raised a patch for this. https://git.opendaylight.org/gerrit/#/c/76210/

Could you please run the mentioned CSIT job on this.

Comment by Anil Vishnoi [ 01/Oct/18 ]

shague any update on this bug ? Patch is raised and it's waiting for your +1 (csit results ) for merge.

Comment by Sam Hague [ 02/Oct/18 ]

Running csit on the patches now and will update. In the future the csit can be triggered by adding test-openflowplugin-netvirt for 1node and test-openflowplugin-cluster-netvirt for the 3node tests. For this jira here, the 3node version is required.

Comment by Anil Vishnoi [ 02/Oct/18 ]

shague Please mention the name of the test that is failing, so that folks working on patch can really verify if the test is passing with the patch.

Comment by Sam Hague [ 04/Oct/18 ]

The exception doesn't seem to be coming out anymore, so let's merge the patch.

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