This introduces a minor incompatibility, so needs to go into 1.8.0, not 1.7.8.

Perhaps we should identify other changes that also introduce minor
incompatibilities and push out a 1.8.0 release soon?  I don't want to
open the gates to major incompatibilities, but a few whose
incompatibilities that are high value and are relatively easy to
diagnose might be reasonable.

Other obvious candidates might be:
  - AVRO-1334 (update java dependencies)
  - AVRO-1550 (update protobuf dependency)
  - AVRO-1514 (update perl dependencies)

What do others think?

Doug

On Mon, Aug 4, 2014 at 2:50 PM, Sean Busbey (JIRA) <[email protected]> wrote:
>
>      [ 
> https://issues.apache.org/jira/browse/AVRO-997?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
>  ]
>
> Sean Busbey updated AVRO-997:
> -----------------------------
>
>     Status: Patch Available  (was: In Progress)
>
>> Union of enum and null cannot be serialized
>> -------------------------------------------
>>
>>                 Key: AVRO-997
>>                 URL: https://issues.apache.org/jira/browse/AVRO-997
>>             Project: Avro
>>          Issue Type: Bug
>>    Affects Versions: 1.5.1
>>            Reporter: Aaron Kimball
>>            Assignee: Sean Busbey
>>             Fix For: 1.8.0
>>
>>         Attachments: AVRO-997.patch, AVRO-997.patch, AVRO-997.patch, 
>> AVRO-997.permissive-generic-api.patch
>>
>>
>> I have a schema like:
>> {code}
>> [
>> {
>>   "type": "enum",
>>   "name": "Gender",
>>   "symbols": ["M", "F"]
>> },
>> {
>>   "type" : "record",
>>   "name" : "Foo",
>>   "fields" : [
>>     { "type" : ["Gender", "null"], "name" : "gender" },
>>     ...
>>   ]
>> }
>> ]
>> {code}
>> I build a record like {{Foo foo = new Foo(); foo.gender = Gender.M;}}
>> When I go to serialize this, I get:
>> {code}Not in union 
>> [{"type":"enum","name":"Gender","symbols":["M","F"]},"null"]: M
>>       at 
>> org.apache.avro.generic.GenericData.resolveUnion(GenericData.java:482)
>>       at 
>> org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:70)
>>       at 
>> org.apache.avro.generic.GenericDatumWriter.writeRecord(GenericDatumWriter.java:104)
>>       at 
>> org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:65)
>>       at 
>> org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:57)
>> {code}
>
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.2#6252)

Reply via email to