You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Richard N. Hillegas (Jira)" <ji...@apache.org> on 2019/10/09 19:27:00 UTC
[jira] [Commented] (AVRO-2588) DatumWriter does not serialize
bytes-typed fields
[ https://issues.apache.org/jira/browse/AVRO-2588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16947944#comment-16947944 ]
Richard N. Hillegas commented on AVRO-2588:
-------------------------------------------
I have attached avroByteSerialization.tar, a program which demonstrates this problem. Here are the contents of the README file in this tarball:
This sample program demonstrates that fields typed as "bytes" are NOT serialized when using a DatumWriter. However, they are serialized correctly when you hand-write them via a BinaryEncoder.
1) After unpacking the tarball, cd to the root of the unpacked directory tree.
2) Then issue the following command
mvn install
3) Then issue the following command
mvn exec:java
This will produce the following output:
Result of serializing from an object: {"tag": "Sample row", "bigintCol": 12345678901234, "binaryCol": "", "booleanCol": false}
Result of hand-serializing the fields: {"tag": "Sample row 2", "bigintCol": 12345678901235, "binaryCol": "\u000F\u000E\r", "booleanCol": true}
As you can see, the binaryCol field is empty when using the first approach but has the correct data when using the second approach.
> DatumWriter does not serialize bytes-typed fields
> -------------------------------------------------
>
> Key: AVRO-2588
> URL: https://issues.apache.org/jira/browse/AVRO-2588
> Project: Apache Avro
> Issue Type: Bug
> Components: java
> Affects Versions: 1.9.1
> Reporter: Richard N. Hillegas
> Priority: Major
> Attachments: avroByteSerialization.tar
>
>
> When you use a DatumWriter to serialize a record, fields of "bytes" type are NOT serialized. You have to hand-serialize these fields using BinaryEncoder.writeBytes().
> I will attach a sample program which demonstrates this problem.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)