Hey team,
Has anybody ever run into this NPE when running Storm 2.2.0?
2021-03-07 04:36:51.061 o.a.s.m.n.StormServerHandler
Netty-server-localhost-6700-worker-1 [ERROR] server errors in handling the
request
java.lang.NullPointerException: null
at
org.apache.storm.daemon.worker.WorkerState.transferLocalBatch(WorkerState.java:543)
~[storm-client-2.2.0.jar:2.2.0]
at
org.apache.storm.messaging.DeserializingConnectionCallback.recv(DeserializingConnectionCallback.java:71)
~[storm-client-2.2.0.jar:2.2.0]
at org.apache.storm.messaging.netty.Server.enqueue(Server.java:146)
~[storm-client-2.2.0.jar:2.2.0]
at org.apache.storm.messaging.netty.Server.received(Server.java:264)
~[storm-client-2.2.0.jar:2.2.0]
at
org.apache.storm.messaging.netty.StormServerHandler.channelRead(StormServerHandler.java:51)
~[storm-client-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:323)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:297)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:644)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:579)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:496)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:458)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at
org.apache.storm.shade.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:897)
[storm-shaded-deps-2.2.0.jar:2.2.0]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_272]
2021-03-07 04:36:51.061 o.a.s.m.n.StormServerHandler
Netty-server-localhost-6700-worker-1 [INFO] Received error in netty thread..
terminating server...
As far as I can tell, this exception means that Storm is trying to send a tuple
to a different worker instance, but cannot find the JCQueue ("send queue"?)
associated with that worker. Somehow the tuple knows about the destination, but
the workers don't.
It seems related to https://issues.apache.org/jira/browse/STORM-3141, but that
seems to have been fixed in Storm 2.0.0.
I noticed this happening more frequently when I am using the load-aware
"localOrShuffleGrouping", although it still occurred with other groupings.
I created a JIRA ticket https://issues.apache.org/jira/browse/STORM-3751, but
was hoping if anybody on the mailing list had encountered this before.
Thanks,
Arwin