Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
Code - Bug - Unclear Impact
-
Low
-
Low Hanging Fruit
-
Fuzz Test
-
All
-
None
-
Description
Hint messages for dropped tables can still be dispatched, but they’re ignored on the receiving side all usual code paths. Since we’re attempting to re-serialize hint message for dropped table in in-jvm tests, we exercise path that is impossible in regular code, and for which there is no protocol specification.
Stack trace:
INFO [AsyncAppender-Worker-ASYNC] 2021-02-17 18:50:13,759 SubstituteLogger.java:169 - ERROR [MutationStage-2] 2021-02-17 18:50:13,726 AbstractLocalAwareExecutorService.java:166 - Uncaught exception on thread Thread[MutationStage-2,5,node4] java.lang.NullPointerException: null at org.apache.cassandra.hints.Hint$Serializer.serializedSize(Hint.java:150) at org.apache.cassandra.hints.HintMessage$Serializer.serializedSize(HintMessage.java:86) at org.apache.cassandra.hints.HintMessage$Serializer.serializedSize(HintMessage.java:77) at org.apache.cassandra.net.Message$Serializer.payloadSize(Message.java:1289) at org.apache.cassandra.net.Message$Serializer.access$1200(Message.java:607) at org.apache.cassandra.net.Message.payloadSize(Message.java:1341) at org.apache.cassandra.net.Message.access$900(Message.java:66) at org.apache.cassandra.net.Message$Serializer.serializePost40(Message.java:759) at org.apache.cassandra.net.Message$Serializer.serialize(Message.java:618) at org.apache.cassandra.distributed.impl.Instance.serializeMessage(Instance.java:322) at org.apache.cassandra.distributed.impl.Instance.lambda$registerInboundFilter$4(Instance.java:273) at org.apache.cassandra.net.InboundSink$Filtered.accept(InboundSink.java:62) at org.apache.cassandra.net.InboundSink$Filtered.accept(InboundSink.java:49) at org.apache.cassandra.net.InboundSink.accept(InboundSink.java:93) at org.apache.cassandra.distributed.impl.Instance.lambda$null$6(Instance.java:365) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:162) at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:134) at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:119) at relocated.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:834)