jmeierhofer opened a new pull request, #1873: URL: https://github.com/apache/plc4x/pull/1873
Fixes 2 exceptions and some typos in log messages. ### Fixes an exception when the "watchdog" is tried to be removed but was not added yet. This produced an unnecessary INFO log: ``` DefaultChannelPipeline.getContextOrDie(String) line: 1022 DefaultChannelPipeline.remove(String) line: 372 S7HMuxImpl.userEventTriggered(ChannelHandlerContext, Object) line: 180 DefaultChannelHandlerContext(AbstractChannelHandlerContext).invokeUserEventTriggered(Object) line: 398 AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext, Object) line: 376 DefaultChannelPipeline$HeadContext(AbstractChannelHandlerContext).fireUserEventTriggered(Object) line: 368 DefaultChannelPipeline$HeadContext.userEventTriggered(ChannelHandlerContext, Object) line: 1375 DefaultChannelPipeline$HeadContext(AbstractChannelHandlerContext).invokeUserEventTriggered(Object) line: 396 AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext, Object) line: 376 EmbeddedChannel$EmbeddedChannelPipeline(DefaultChannelPipeline).fireUserEventTriggered(Object) line: 862 DefaultConversationContext<T1>.fireConnected() line: 76 S7ProtocolLogic.lambda$8(ConversationContext, S7ParameterSetupCommunication) line: 212 0x000001e0814f4fc0.accept(Object) line: not available NettyHashTimerTimeoutManager$TimeoutCompletionCallback<T>(Consumer<T>).lambda$andThen$0(Consumer, Object) line: 65 0x000001e081458960.accept(Object) line: not available Plc4xNettyWrapper<T>.decode(ChannelHandlerContext, T, List<Object>) line: 183 MessageToMessageCodec$2.decode(ChannelHandlerContext, Object, List<Object>) line: 81 MessageToMessageCodec$2(MessageToMessageDecoder<I>).channelRead(ChannelHandlerContext, Object) line: 88 Plc4xNettyWrapper<T>(MessageToMessageCodec<INBOUND_IN,OUTBOUND_IN>).channelRead(ChannelHandlerContext, Object) line: 111 DefaultChannelHandlerContext(AbstractChannelHandlerContext).invokeChannelRead(Object) line: 442 AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext, Object) line: 420 DefaultChannelHandlerContext(AbstractChannelHandlerContext).fireChannelRead(Object) line: 412 MessageToMessageCodec$2(MessageToMessageDecoder<I>).channelRead(ChannelHandlerContext, Object) line: 103 EventListenerMessageCodec(MessageToMessageCodec<INBOUND_IN,OUTBOUND_IN>).channelRead(ChannelHandlerContext, Object) line: 111 DefaultChannelHandlerContext(AbstractChannelHandlerContext).invokeChannelRead(Object) line: 442 AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext, Object) line: 420 DefaultChannelHandlerContext(AbstractChannelHandlerContext).fireChannelRead(Object) line: 412 ByteToMessageDecoder.fireChannelRead(ChannelHandlerContext, CodecOutputList, int) line: 346 ByteToMessageCodec$1(ByteToMessageDecoder).channelRead(ChannelHandlerContext, Object) line: 318 GeneratedProtocolMessageCodec<BASE_PACKET_CLASS>(ByteToMessageCodec<I>).channelRead(ChannelHandlerContext, Object) line: 103 DefaultChannelHandlerContext(AbstractChannelHandlerContext).invokeChannelRead(Object) line: 442 AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext, Object) line: 420 DefaultChannelHandlerContext(AbstractChannelHandlerContext).fireChannelRead(Object) line: 412 LoggingHandler.channelRead(ChannelHandlerContext, Object) line: 280 DefaultChannelHandlerContext(AbstractChannelHandlerContext).invokeChannelRead(Object) line: 442 AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext, Object) line: 420 DefaultChannelHandlerContext(AbstractChannelHandlerContext).fireChannelRead(Object) line: 412 S7HMuxImpl.decode(ChannelHandlerContext, ByteBuf, List<Object>) line: 145 S7HMuxImpl.decode(ChannelHandlerContext, Object, List) line: 1 MessageToMessageCodec$2.decode(ChannelHandlerContext, Object, List<Object>) line: 81 MessageToMessageCodec$2(MessageToMessageDecoder<I>).channelRead(ChannelHandlerContext, Object) line: 88 S7HMuxImpl(MessageToMessageCodec<INBOUND_IN,OUTBOUND_IN>).channelRead(ChannelHandlerContext, Object) line: 111 DefaultChannelHandlerContext(AbstractChannelHandlerContext).invokeChannelRead(Object) line: 442 AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext, Object) line: 420 DefaultChannelPipeline$HeadContext(AbstractChannelHandlerContext).fireChannelRead(Object) line: 412 DefaultChannelPipeline$HeadContext.channelRead(ChannelHandlerContext, Object) line: 1357 DefaultChannelPipeline$HeadContext(AbstractChannelHandlerContext).invokeChannelRead(Object) line: 440 AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext, Object) line: 420 DefaultChannelPipeline.fireChannelRead(Object) line: 868 NioSocketChannel$NioSocketChannelUnsafe(AbstractNioByteChannel$NioByteUnsafe).read() line: 166 NioEventLoop.processSelectedKey(SelectionKey, AbstractNioChannel) line: 788 NioEventLoop.processSelectedKeysOptimized() line: 724 NioEventLoop.processSelectedKeys() line: 650 NioEventLoop.run() line: 562 SingleThreadEventExecutor$4.run() line: 997 ThreadExecutorMap$2.run() line: 74 FastThreadLocalRunnable.run() line: 30 FastThreadLocalThread(Thread).runWith(Object, Runnable) line: 1596 FastThreadLocalThread(Thread).run() line: 1583 ``` ### Fixes an unnecessary log message about an invalid encode() call which does not add any output to the given list. This behavior was already mentioned here: https://github.com/apache/plc4x/issues/1257 ``` io.netty.handler.codec.DecoderException: io.netty.handler.codec.EncoderException: MessageToMessageCodec$1 must produce at least one message. at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:98) at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318) at io.netty.handler.codec.ByteToMessageCodec.channelRead(ByteToMessageCodec.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:280) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at org.apache.plc4x.java.s7.readwrite.protocol.S7HMuxImpl.decode(S7HMuxImpl.java:145) at org.apache.plc4x.java.s7.readwrite.protocol.S7HMuxImpl.decode(S7HMuxImpl.java:1) at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88) at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1357) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:868) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:1583) Caused by: io.netty.handler.codec.EncoderException: MessageToMessageCodec$1 must produce at least one message. at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:99) at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:868) at io.netty.handler.logging.LoggingHandler.write(LoggingHandler.java:288) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:868) at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:113) at io.netty.handler.codec.ByteToMessageCodec.write(ByteToMessageCodec.java:108) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:868) at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:868) at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:891) at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:956) at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:982) at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950) at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000) at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:974) at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:305) at io.netty.channel.embedded.EmbeddedChannel.writeAndFlush(EmbeddedChannel.java:776) at org.apache.plc4x.java.spi.internal.DefaultConversationContext.sendToWire(DefaultConversationContext.java:70) at org.apache.plc4x.java.spi.internal.DefaultSendRequestContext.handle(DefaultSendRequestContext.java:107) at org.apache.plc4x.java.spi.internal.DefaultSendRequestContext.handle(DefaultSendRequestContext.java:1) at org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.lambda$3(S7ProtocolLogic.java:194) at java.base/java.util.function.Consumer.lambda$andThen$0(Consumer.java:65) at org.apache.plc4x.java.spi.Plc4xNettyWrapper.decode(Plc4xNettyWrapper.java:183) at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88) ... 40 common frames omitted ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@plc4x.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org