Clarify resolution for enums (and fix code) -------------------------------------------
Key: AVRO-75 URL: https://issues.apache.org/jira/browse/AVRO-75 Project: Avro Issue Type: Bug Components: spec Reporter: Raymie Stata Assignee: Doug Cutting The current resolution rule for enum's says: "if the writer's symbol is not present in the reader's enum, then the enum value is unset." This is the only place the word "unset" is used in the doc, it's not clear what you mean. The code seems to be inconsistent: GenericDatumReader will happily return a symbol the reader doesn't understand; ReflectDatumReader will probably throw a class-not-found exception; ResolvingDecoder throws an error. I propose that we declare this case an error, i.e., rewrite the spec to "if the writer's symbol is not listed in the reader's enum, an error is signaled." GenericDatumReader should be updated to throw an error in this case. If we decide to stick with the "unset" language, we need to define what "unset" means (and, if necessary, update ReflectDatumReader and ResolvingDecoder). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.