[
https://issues.apache.org/jira/browse/AVRO-3514?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17534682#comment-17534682
]
Oscar Westra van Holthe - Kind commented on AVRO-3514:
------------------------------------------------------
Aliases are a good way to fix legacy, reflected schemata converted from e.g.
XML from the acronym era caused by databases with a short column name limit.
> Renaming a named type should either be compatible or incompatible.
> ------------------------------------------------------------------
>
> Key: AVRO-3514
> URL: https://issues.apache.org/jira/browse/AVRO-3514
> Project: Apache Avro
> Issue Type: Bug
> Reporter: Ryan Skraba
> Priority: Major
>
> Currently, the Java SDK permits a RECORD schema (for example) to be renamed.
> In other words, data serialized with an old schema named {{SimpleRecordV1}}
> can be deserialized as a record named {{SimpleRecordV2}}.
> The Python SDK does not permit this to happen, causing an incompatibility
> error.
> The spec says:
> It is an error if the two schemas do not match.
> To match, one of the following must hold:
> ...
> both schemas are records with the same (unqualified) name
> If I remember correctly this was discussed (on the mailing list?) and
> renaming a named type was considered OK and the Java SDK was being acceptably
> more lenient than the spec. However, this causes difference in behaviour
> between Java and Python implementations.
> We should decide which behaviour is preferred and align the SDK.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)