AvroRuntimeException: Unknown datum type: java.lang.NullPointerException
------------------------------------------------------------------------
Key: AVRO-1054
URL: https://issues.apache.org/jira/browse/AVRO-1054
Project: Avro
Issue Type: Bug
Components: java
Affects Versions: 1.6.3
Environment: Linux, Java 1.6
Reporter: Sushanth
I have a simple messaging protocol, which sends some data, and receives a
response.
I am calling
notification.setStatus(MessageStatus.DELIVERED);client.notify(notification). I
am getting the following error.
org.apache.avro.AvroRuntimeException: Unknown datum type:
java.lang.NullPointerException
org.apache.avro.AvroRuntimeException: org.apache.avro.AvroRuntimeException:
Unknown datum type: java.lang.NullPointerException
at
org.apache.avro.ipc.specific.SpecificRequestor.readError(SpecificRequestor.java:126)
at
org.apache.avro.ipc.Requestor$Response.getResponse(Requestor.java:554)
at
org.apache.avro.ipc.Requestor$TransceiverCallback.handleResult(Requestor.java:359)
at
org.apache.avro.ipc.Requestor$TransceiverCallback.handleResult(Requestor.java:322)
at
org.apache.avro.ipc.NettyTransceiver$NettyClientAvroHandler.messageReceived(NettyTransceiver.java:495)
at
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at
org.apache.avro.ipc.NettyTransceiver$NettyClientAvroHandler.handleUpstream(NettyTransceiver.java:477)
at
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at
org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:783)
at
org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)
at
org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:321)
at
org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:299)
at
org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:216)
at
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
at
org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)
at
org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:351)
at
org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:282)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:202)
at
org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at
org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
When I do
notification.setStatus(MessageStatus.READ);client.notify(notification);
things are fine.
my avpr is
{"namespace": "com.company.avro.generated",
"protocol": "CallResponse",
"types": [
{"name": "Notification", "type": "record",
"fields": [
{"name": "recipientID", "type": "string"},
{"name": "message", "type": "string"},
{"name": "senderID", "type": "string"},
{"name": "messageID", "type": "string"},
{"name": "transactionID", "type": "string"},
{"name": "submitTimestamp", "type": "string"},
{"name": "msgNotification", "type": "string"},
{"name": "status", "type": {"type": "enum", "name": "MessageStatus",
"symbols": ["DELIVERED", "FAILED", "READ"]}}
]
},
{"name": "NotificationAck", "type": "record",
"fields": [{"name": "response", "type": "string"}]
}
],
"messages": {
"send": {
"request": [{"name": "notification", "type": "Notification"}],
"response": "NotificationAck"
}
}
}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira