[
https://issues.apache.org/jira/browse/NIFI-969?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15197271#comment-15197271
]
Dave Torok commented on NIFI-969:
---------------------------------
Actually the JSONEncoder would be the proper way to produce Avro-JSON that can
be deserialized back to Avro. I don't find that the toString() produces the
union schema encoding as you describe.
However this option would be highly desirable.
> Add option to use standard JSON or Avro-JSON to ConvertAvroToJSON
> -----------------------------------------------------------------
>
> Key: NIFI-969
> URL: https://issues.apache.org/jira/browse/NIFI-969
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Extensions
> Affects Versions: 0.3.0
> Reporter: Ryan Blue
>
> ConvertAvroToJSON uses {{GenericData#toString(GenericRecord)}} to convert to
> JSON. This produces
> [Avro-JSON|https://avro.apache.org/docs/1.7.7/spec.html#json_encoding], which
> probably isn't what most users want because it adds an unexpected layer for
> Avro union types:
> bq. the union schema {{["null","string",...]}} ... would encode: the string
> {{"a"}} as {{{"string": "a"}}} ...
> It would be good to have a conversion that doesn't add those layers as an
> option.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)