[
https://issues.apache.org/jira/browse/AVRO-1931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15891985#comment-15891985
]
ASF GitHub Bot commented on AVRO-1931:
--------------------------------------
GitHub user epkanol opened a pull request:
https://github.com/apache/avro/pull/199
AVRO-1931: Reader is now compatible if able to read all branches of u…
…nion
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/epkanol/avro-1 AVRO-1931
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/avro/pull/199.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #199
----
----
> SchemaCompatibility fails to recognize reader compatible with all branches of
> a union
> -------------------------------------------------------------------------------------
>
> Key: AVRO-1931
> URL: https://issues.apache.org/jira/browse/AVRO-1931
> Project: Avro
> Issue Type: Bug
> Components: java
> Affects Versions: 1.7.7, 1.8.1
> Environment: Java
> Reporter: Anders Sundelin
> Assignee: Anders Sundelin
> Priority: Minor
> Labels: patch
> Attachments: AVRO-1931-2.patch
>
> Original Estimate: 1h
> Remaining Estimate: 1h
>
> It is stated in the Avro spec
> "if writer's is a union, but reader's is not:
> If the reader's schema matches the selected writer's schema, it is
> recursively resolved against it. If they do not match, an error is signalled."
> In case a the chosen reader is compatible with all branches of the union in
> the writer, then the class SchemaCompatibility should reflect this. Currently
> it does not.
> The submitted patch corrects this (also added tests showing this behaviour in
> Avro)
> The new tests, in the class TestReadingWritingDataInEvolvedSchemas, could be
> redundant, but they were very useful when exploring how Avro actually works
> during de-/serialization
> I will try to continue working a little bit on the SchemaCompatibility class,
> adding more user-friendly error messages (suitable for deeper structures than
> todays error message). Feel free to contact me if you have any ideas or
> pointers to existing work.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)