Just a little extra info on this, would this have anything to do with the fact that the beans might not be deployed at the time Netty tries to transfer the body?
Thanks, Yiannis On 13 December 2010 11:14, Yiannis Mavroukakis < [email protected]> wrote: > Hello everyone, > > I've got a situation where I encounter an exception from the netty producer > when it gets used right after Camel has started up. > This happens once and once only, afterwards everything is fine. The > exception I am getting is: > > 2010-12-12 00:59:15,856 14232 INFO [main] > [org.apache.camel.impl.DefaultCamelContext] (main:) Apache Camel 2.5.0 > (CamelContext: camel) started in 6.282 seconds > 2010-12-12 00:59:15,861 14237 INFO [main] > [org.springframework.web.context.ContextLoader] (main:) Root > WebApplicationContext: initialization completed in 14235 ms > 2010-12-12 01:00:12,596 70972 WARN [New I/O server worker #2-1] > [org.apache.camel.component.netty.handlers.ServerChannelHandler] (New I/O > server worker #2-1:) Closing channel as an exception was thrown from N > etty > java.io.IOException: Broken pipe > at sun.nio.ch.FileDispatcher.write0(Native Method)[:1.6.0_21] > at > sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:29)[:1.6.0_21] > at > sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:100)[:1.6.0_21] > at sun.nio.ch.IOUtil.write(IOUtil.java:56)[:1.6.0_21] > at > sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:334)[:1.6.0_21] > at > org.jboss.netty.channel.socket.nio.SocketSendBufferPool$PooledSendBuffer.transferTo(SocketSendBufferPool.java:243)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioWorker.write0(NioWorker.java:470)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioWorker.writeFromUserCode(NioWorker.java:388)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.handleAcceptedSocket(NioServerSocketPipelineSink.java:137)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.eventSunk(NioServerSocketPipelineSink.java:76)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.Channels.write(Channels.java:632)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.handler.codec.oneone.OneToOneEncoder.handleDownstream(OneToOneEncoder.java:70)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.Channels.write(Channels.java:611)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.Channels.write(Channels.java:578)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.AbstractChannel.write(AbstractChannel.java:259)[netty-3.2.2.Final.jar:] > at > org.apache.camel.component.netty.NettyHelper.writeBodySync(NettyHelper.java:95)[camel-netty-2.5.0.jar:2.5.0] > at > org.apache.camel.component.netty.handlers.ServerChannelHandler.sendResponse(ServerChannelHandler.java:147)[camel-netty-2.5.0.jar:2.5.0] > at > org.apache.camel.component.netty.handlers.ServerChannelHandler.messageReceived(ServerChannelHandler.java:104)[camel-netty-2.5.0.jar:2.5.0] > at > org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:76)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:317)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:299)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:216)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:350)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)[netty-3.2.2.Final.jar:] > at > org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)[netty-3.2.2.Final.jar:] > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_21] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.0_21] > at java.lang.Thread.run(Thread.java:619)[:1.6.0_21] > > > 2010-12-12 01:00:12,625 71001 WARN [New I/O server worker #2-1] > [org.apache.camel.component.netty.NettyHelper] (New I/O server worker #2-1:) > Cannot write body: 0^@ using channel: [id: 0x7821f270, /172.17.0.11 > :49767 :> /10.3.3.25:5156] > > > My netty configuration and route setup > > <!-- Netty Producer Setup --> > > <bean id="nullDelimiter" class= > "org.jboss.netty.handler.codec.frame.Delimiters" > > factory-method="nulDelimiter" /> > > <bean id="stringencoder" class= > "org.jboss.netty.handler.codec.string.StringEncoder" /> > > <util:list id="decoders" list-class="java.util.LinkedList"> > > <bean id="delim-decoder" > > class="org.jboss.netty.handler.codec.frame.DelimiterBasedFrameDecoder"> > > <constructor-arg value="10240" /> > > <constructor-arg ref="nullDelimiter" /> > > </bean> > > <bean class="org.jboss.netty.handler.codec.string.StringDecoder" /> > > </util:list> > > <route> > > <from > > uri="netty:tcp:// > 0.0.0.0:5155?decoders=#decoders&encoders=#stringencoder<http://0.0.0.0:5155?decoders=#decoders&encoders=%23stringencoder> > " /> > > <wireTap uri="bean:partnerRoute" /> > > <transform> > > <constant>0</constant> > > </transform> > > </route> > > <route> > > <from > > uri="netty:tcp:// > 0.0.0.0:5156?textline=true&delimiter=NULL&encoding=UTF8<http://0.0.0.0:5156?textline=true&delimiter=NULL&encoding=UTF8> > " /> > > <wireTap uri="bean:partnerRoute" /> > > <transform> > > <constant>0</constant> > > </transform> > > </route> > > > > Is this something that is at my end, or have I hit a bug? > > > Thanks, > > Yiannis >
