You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Doug Cutting (JIRA)" <ji...@apache.org> on 2017/09/01 20:43:00 UTC

[jira] [Commented] (AVRO-1340) use default to allow old readers to specify default enum value when encountering new enum symbols

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

Doug Cutting commented on AVRO-1340:
------------------------------------

Looking back at this issue's description, the problem is adding a symbol to an enum and being able to read items with the old schema which does not have that symbol.  Alternately put, the issue is being able to remove an enum symbol in a subsequent version of a schema.

Adding a fallback symbol alone fixes this issue, doesn't it?  Aliases seem to be solving another problem, that of renaming symbols.  Perhaps that can be a separate issue, helping us to focus on the task here?

> use default to allow old readers to specify default enum value when encountering new enum symbols
> -------------------------------------------------------------------------------------------------
>
>                 Key: AVRO-1340
>                 URL: https://issues.apache.org/jira/browse/AVRO-1340
>             Project: Avro
>          Issue Type: Improvement
>          Components: spec
>         Environment: N/A
>            Reporter: Jim Donofrio
>            Priority: Minor
>
> The schema resolution page says:
> > if both are enums:
> > if the writer's symbol is not present in the reader's enum, then an
> error is signalled.
> This makes it difficult to use enum's because you can never add a enum value and keep old reader's compatible. Why not use the default option to refer to one of enum values so that when a old reader encounters a enum ordinal it does not recognize, it can default to the optional schema provided one. If the old schema does not provide a default then the older reader can continue to fail as it does today.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)