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)
