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

Doug Cutting commented on AVRO-22:
----------------------------------

> Wait, anonymous records are currently the only way to implement versioned 
> records.

Anonymous records can still be created programmatically.  One can convert a 
JSON record schema into an anonymous record with:

  Schema.create(Schema.parse(jsonText).getFields())

Then you can construct a union of these.  Does that suffice?

Also, rather than re-opening this issue, shouldn't we pursue this in AVRO-23?

> Kill anonymous records or fix GenericDatumReader
> ------------------------------------------------
>
>                 Key: AVRO-22
>                 URL: https://issues.apache.org/jira/browse/AVRO-22
>             Project: Avro
>          Issue Type: Bug
>          Components: spec
>            Reporter: Raymie Stata
>            Assignee: Doug Cutting
>             Fix For: 1.0
>
>
> Anonymous record names are a pain, can we get rid of them?
> If not, I think I noticed a bug in GenericDatumReader.resolveExpected:
> {noformat}
>      if (branch.getType() == Type.RECORD) {
>        String name = branch.getName();
>        if (name == null || name.equals(actual.getName()))
>          return branch;
>      } else
>        return branch;
> {noformat}
> This doesn't seem to require that _both_ are null to match: if the name of 
> {{branch}} is null and the name {{actual}} is not, then we get a match, which 
> I think is a bug.
> But again, let's just get rid of null names.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to