Details
-
Improvement
-
Status: Resolved
-
Resolution: Done
-
unspecified
-
None
-
None
-
Operating System: Mac OS
Platform: PC
Description
I am seeing the following exception in openflowjava at the OSGI console:
2013-11-21 03:59:46.732 PST [nioEventLoopGroup-5-1] INFO o.o.o.p.i.c.PublishingChannelInitializer - Incoming connection accepted - building pipeline
2013-11-21 03:59:46.761 PST [nioEventLoopGroup-5-1] INFO o.o.o.p.impl.core.OFFrameDecoder - OF Protocol message received, type:0
2013-11-21 03:59:46.762 PST [pool-25-thread-1] INFO o.o.o.o.md.core.HandshakeManagerImpl - handshake STARTED
2013-11-21 03:59:46.776 PST [nioEventLoopGroup-5-1] INFO o.o.o.p.i.c.ConnectionAdapterImpl - Hello received / branch
2013-11-21 03:59:46.792 PST [pool-25-thread-1] INFO o.o.o.o.md.core.HandshakeManagerImpl - handshake STARTED
2013-11-21 03:59:46.796 PST [nioEventLoopGroup-5-1] INFO o.o.o.p.impl.core.OFFrameDecoder - OF Protocol message received, type:6
2013-11-21 03:59:46.799 PST [pool-25-thread-1] INFO o.o.o.o.md.core.HandshakeManagerImpl - handshake SETTLED: version=4, datapathId=1, auxiliaryId=0
2013-11-21 03:59:46.857 PST [pool-25-thread-1] INFO o.o.o.o.m.c.s.SalRegistrationManager - ModelDrivenSwitch for 1 registered to MD-SAL.
2013-11-21 03:59:47.088 PST [nioEventLoopGroup-5-1] INFO o.o.o.p.impl.core.OFFrameDecoder - OF Protocol message received, type:10
2013-11-21 03:59:47.099 PST [nioEventLoopGroup-5-1] WARN i.n.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
io.netty.handler.codec.DecoderException: java.lang.IllegalArgumentException: illegal length
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) ~[na:na]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) ~[na:na]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:173) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) ~[na:na]
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:253) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) ~[na:na]
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) ~[na:na]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) ~[na:na]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:100) ~[na:na]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:480) ~[na:na]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:447) ~[na:na]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:341) ~[na:na]
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) ~[na:na]
at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25]
Caused by: java.lang.IllegalArgumentException: illegal length
at org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber.<init>(PortNumber.java:21) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.util.MatchDeserializer.createMatchEntriesInternal(MatchDeserializer.java:216) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.util.MatchDeserializer.createMatchEntries(MatchDeserializer.java:181) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.util.MatchDeserializer.createMatch(MatchDeserializer.java:155) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.deserialization.factories.PacketInMessageFactory.bufferToMessage(PacketInMessageFactory.java:50) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.deserialization.factories.PacketInMessageFactory.bufferToMessage(PacketInMessageFactory.java:19) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.deserialization.DeserializationFactory.bufferToMessage(DeserializationFactory.java:33) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.core.OF13Decoder.decode(OF13Decoder.java:33) ~[na:na]
at org.opendaylight.openflowjava.protocol.impl.core.OF13Decoder.decode(OF13Decoder.java:18) ~[na:na]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[na:na]
... 18 common frames omitted
Context for reproduction:
I'm running mininet with:
sudo mn --topo single,3 --controller 'remote,ip=192.168.195.157:6653' --switch ovsk,protocols=OpenFlow13
(using the image from here: https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin::End_to_End_Inventory )
git context:
hagbard@ubuntu:~/git/controller$ git log -2
commit 0199f96873b6c42e85d91192e008c587aa4fd71c
Author: Ed Warnicke <eaw@cisco.com>
Date: Thu Nov 21 03:45:27 2013 -0800
Fixed NPE in MD-FRM.
There was an uninitialized ConcurrentMap. Initialized it.
Change-Id: I1bc5c4959806c020b630b4a5da3e3a9c311850f5
Signed-off-by: Ed Warnicke <eaw@cisco.com>
commit 3f34c4cf195d0a9dd18a820624b517fe7cc03bb0
Merge: 6a796ca 6175d57
Author: Ed Warnicke <eaw@cisco.com>
Date: Wed Nov 20 23:54:14 2013 +0000
Merge "Ganymed ChannelManager hack for subsystem command, functionality for subsystem added - tabulators replaced"
hagbard@ubuntu:~/git/openflowplugin$ git log -2
commit 82cd08ffdcef59dd2c6a621bcd02e58bf8414334
Author: Ed Warnicke <eaw@cisco.com>
Date: Tue Nov 19 18:41:38 2013 -0600
This should be working multipartdesc but isn't... debugging
Change-Id: Id28b08cff0bb68a2c8ebcee30af8753a947f8559
Signed-off-by: Ed Warnicke <eaw@cisco.com>
commit 8aa143a24e937d5f73d4bdcd52c01e723693a6c2
Author: Prasanna Huddar <prasanna.huddar@ericsson.com>
Date: Wed Nov 20 20:37:54 2013 +0530
Error/Experimenter converters
Signed-off-by: Prasanna Huddar <prasanna.huddar@ericsson.com>
Change-Id: I47b62f91444842fa896495d880fd442268ecb3a7
hagbard@ubuntu:~/git/openflowjava$ git log -2
commit 8ef500125b8ec9fcaf70ef3cd0c416691d72a722
Author: Michal Polkorab <michal.polkorab@pantheon.sk>
Date: Mon Nov 18 16:48:32 2013 +0100
Fixed onConnectionReady event firing
Signed-off-by: Michal Polkorab <michal.polkorab@pantheon.sk>
commit da52afe56c201601b9dd8d52a537146988be4149
Author: Michal Polkorab <michal.polkorab@pantheon.sk>
Date: Mon Nov 18 15:19:33 2013 +0100
TlsDetector pipeline engaging parameterizable
Signed-off-by: Michal Polkorab <michal.polkorab@pantheon.sk>
Change-Id: I4015d4a4b0ad9de50c1f9ba450d56c3b2acaacf4
This is all against the distribution build in openflowplugin/distributions/base