[
https://issues.apache.org/jira/browse/AVRO-1340?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16326481#comment-16326481
]
Felix GV commented on AVRO-1340:
--------------------------------
I personally do not perceive sufficient value in the alias proposal to warrant
its complexity. My previous comments should not be construed as endorsements of
the aliasing proposal, but rather, were simply to ensure that we fully
considered the edge cases of these various mechanisms.
I believe supporting a single “fallback symbol” per enum is much simpler and
cleaner. It would seem very intuitive to me to annotate the enum field with
“default” in order to specify such fallback symbol, but I know some people
above commented on some implementation challenges of naming it as such, and
thus proposed the different nomenclature of “fallback symbol”. I don’t fully
grok why such challenges may exist, but it is fine either way I guess.
First-class support for enum evolution would be a big boon for Avro, and
hopefully the mechanism will be easy to reason about.
> 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
(v7.6.3#76005)