You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2016/09/27 14:52:20 UTC
[jira] [Commented] (AVRO-1849) C++ printJson fails on record with
no fields
[ https://issues.apache.org/jira/browse/AVRO-1849?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15526372#comment-15526372 ]
ASF subversion and git services commented on AVRO-1849:
-------------------------------------------------------
Commit 1296ce9238a315b4323db351483dc66ec1a1afe3 in avro's branch refs/heads/master from [~tomwhite]
[ https://git-wip-us.apache.org/repos/asf?p=avro.git;h=1296ce9 ]
AVRO-1849: C++: printJson fails on record with no fields. Contributed by Simon Woodford.
> C++ printJson fails on record with no fields
> --------------------------------------------
>
> Key: AVRO-1849
> URL: https://issues.apache.org/jira/browse/AVRO-1849
> Project: Avro
> Issue Type: Bug
> Components: c++
> Affects Versions: 1.7.7, 1.8.0
> Environment: Not relevant
> Reporter: Simon Woodford
> Priority: Minor
>
> The function NodeRecord::printJson in lang/c++/impl/NodeImpl.cc does not correctly handle a record with no fields. It injects an extra closing curly brace, and the result is invalid JSON.
> Starting with a schema
> {
> "type": "record",
> "name": "Example",
> "fields" : [
> ]
> }
> and parsing it to create a ValidSchema, then calling toJson on the ValidSchema generates
> {
> "type": "record",
> "name": "Example",
> "fields" : [
> }
> ]
> }
> A record with no fields is unusual but we have encountered use cases for it, avro does not invalidate a record with no fields, and I've confirmed that Java, C and C# handle this case correctly. (I have not checked the other supported languages.)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)