You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "MihkelJ (JIRA)" <ji...@apache.org> on 2017/05/24 14:18:05 UTC

[jira] [Commented] (AVRO-1582) Json serialization of nullable fileds and fields with default values improvement.

    [ https://issues.apache.org/jira/browse/AVRO-1582?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16022951#comment-16022951 ] 

MihkelJ commented on AVRO-1582:
-------------------------------

We ran up against this issue recently, so I've created a standalone encoder from Zoltan Farkas' excellent ExtendedJsonDecoder, until this issue is resolved: https://github.com/Celos/avro-json-decoder

It handles point b) from above, infers the value of missing fields from their defaults. The only advantage is that it doesn't require forked avro.

> Json serialization of nullable fileds and fields with default values improvement.
> ---------------------------------------------------------------------------------
>
>                 Key: AVRO-1582
>                 URL: https://issues.apache.org/jira/browse/AVRO-1582
>             Project: Avro
>          Issue Type: Improvement
>          Components: java
>    Affects Versions: 1.8.0
>            Reporter: Zoltan Farkas
>         Attachments: AVRO-1582-PATCH
>
>
> Currently serializing a nullable field of type union like:
> "type" : ["null","some type"]
> when serialized as JSON results in:  
> "field":{"some type":"value"}
> when it could be:
> "field":"value"
> Also fields that equal the the default value can be omitted from the serialized data. This is possible because the reader will have the writer's schema and can infer the field values. This reduces the size of the json messages.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)