Raghupal Reddy created AVRO-2874:
------------------------------------

             Summary: java.lang.ClassCastException: 
org.apache.avro.generic.GenericData$Record cannot be cast to 
org.apache.avro.ipc.HandshakeRequest
                 Key: AVRO-2874
                 URL: https://issues.apache.org/jira/browse/AVRO-2874
             Project: Apache Avro
          Issue Type: Bug
          Components: java
    Affects Versions: 1.9.2
            Reporter: Raghupal Reddy


Hi,

Here is the stack trace

2020-06-29 05:00:34,712 | WARN  | w I/O worker #11 | Responder                  
      | 56 - avro-ipc - 1.9.2 | system error2020-06-29 05:00:34,712 | WARN  | w 
I/O worker #11 | Responder                        | 56 - avro-ipc - 1.9.2 | 
system errorjava.lang.ClassCastException: 
org.apache.avro.generic.GenericData$Record cannot be cast to 
org.apache.avro.ipc.HandshakeRequest at 
org.apache.avro.ipc.Responder.handshake(Responder.java:209)[56:avro-ipc:1.9.2] 
at org.apache.avro.ipc.Responder.respond(Responder.java:120)[56:avro-ipc:1.9.2] 
at 
org.apache.avro.ipc.netty.NettyServer$NettyServerAvroHandler.messageReceived(NettyServer.java:173)[47:avro-ipc-netty:1.9.2]
 at 
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)[41:org.jboss.netty:3.10.0.Final]
 at 
org.apache.avro.ipc.netty.NettyServer$NettyServerAvroHandler.handleUpstream(NettyServer.java:159)[47:avro-ipc-netty:1.9.2]
 at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:337)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)[41:org.jboss.netty:3.10.0.Final]
 at 
org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)[41:org.jboss.netty:3.10.0.Final]
 at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)[:1.8.0_252]
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)[:1.8.0_252]
 at java.lang.Thread.run(Thread.java:748)[:1.8.0_252]

 

I could see there is a mismatch in the generated jar (avro-ipc-1.9.2.jar) and 
the sources of the jar.

 

>From the source: org.apache.avro.ipc.Responder.handshake 

HandshakeRequest request = handshakeReader.read(null, in);

 

>From the jar: 

HandshakeRequest request = 
(HandshakeRequest)this.handshakeReader.read((Object)null, in);

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to