[OPNFLWPLUG-582] Li: TransactionManager does not get closed and future connections are rejected. Created: 11/Dec/15  Updated: 27/Sep/21  Resolved: 10/Mar/16

Status: Resolved
Project: OpenFlowPlugin
Component/s: General
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Kamal Rameshan Assignee: Kamal Rameshan
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 4757

 Description   

After connections are closed repeatedly, intermittently the switch is not able to make any connections with the controller.

Future connections are rejected as the TransactionChainManager status remains at WORKING.

These logs are printed repeatedly:
2015-12-09 19:16:26.178 GMT+00:00 [nioEventLoopGroup-12-3] INFO o.o.o.impl.device.DeviceManagerImpl - In deviceConnected, ownedByInvokingConnectionContext is false and TransactionChainManagerStatus.WORKING. Closing connection to device to start again.

Also an exception after the last successful TransactionChainManager close.

2015-12-09 19:16:26.171 GMT+00:00 [nioEventLoopGroup-12-3] WARN o.o.o.i.d.TransactionChainManager - Failed to close transaction chain manager's registration.
java.lang.NullPointerException: null
at org.opendaylight.openflowplugin.impl.device.TransactionChainManager.notifyReadyForNewTransactionChainAndCloseFactory(TransactionChainManager.java:229) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowplugin.impl.device.TransactionChainManager.close(TransactionChainManager.java:248) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowplugin.impl.device.DeviceContextImpl.tearDown(DeviceContextImpl.java:410) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowplugin.impl.device.DeviceContextImpl.onDeviceDisconnected(DeviceContextImpl.java:423) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowplugin.impl.connection.ConnectionContextImpl.propagateDeviceDisconnectedEvent(ConnectionContextImpl.java:160) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowplugin.impl.connection.ConnectionContextImpl.onConnectionClosed(ConnectionContextImpl.java:152) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowplugin.impl.connection.listener.SystemNotificationsListenerImpl.onDisconnectEvent(SystemNotificationsListenerImpl.java:45) [org.opendaylight.openflowplugin.impl:0.1.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionAdapterImpl.consume(ConnectionAdapterImpl.java:280) [org.opendaylight.openflowjava.openflow-protocol-impl:0.6.2.Lithium-SR2-00003-21]
at org.opendaylight.openflowjava.protocol.impl.core.DelegatingInboundHandler.channelInactive(DelegatingInboundHandler.java:55) [org.opendaylight.openflowjava.openflow-protocol-impl:0.6.2.Lithium-SR2-00003-21]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:237) [io.netty.transport:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:223) [io.netty.transport:4.0.27.Final]
at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) [io.netty.transport:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:237) [io.netty.transport:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:223) [io.netty.transport:4.0.27.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:294) [io.netty.codec:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:237) [io.netty.transport:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:223) [io.netty.transport:4.0.27.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:294) [io.netty.codec:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:237) [io.netty.transport:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:223) [io.netty.transport:4.0.27.Final]
at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) [io.netty.transport:4.0.27.Final]
at io.netty.handler.timeout.ReadTimeoutHandler.channelInactive(ReadTimeoutHandler.java:144) [io.netty.handler:4.0.27.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:237) [io.netty.transport:4.0.27.Final]



 Comments   
Comment by Kamal Rameshan [ 11/Dec/15 ]

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

Comment by Michal Rehak [ 11/Dec/15 ]

merged

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