avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zoltan Ivanfi (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AVRO-1340) use default to allow old readers to specify default enum value when encountering new enum symbols
Date Thu, 13 Oct 2016 13:19:20 GMT

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

Zoltan Ivanfi commented on AVRO-1340:
-------------------------------------

I agree that the generic fallback mechanism may be overkill, I just argued that even though
it is not useful for card suits, it can make sense with different types of enums.

My main concern about introducing a default value for unknown values is that 1) it requires
writing boiler-plate code, but 2) this requirement is not enforced and if the boiler-plate
is not added initially it is impossible to handle the situation later. On the other hand,
even with these shortcomings, the possibility to specify a default value is still better than
the current situation.

> 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.3.4#6332)

Mime
View raw message