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

ASF subversion and git services commented on AVRO-2400:
-------------------------------------------------------

Commit 907558c65fa754a53b4a9493cebe692aecddfe02 in avro's branch 
refs/heads/branch-1.9 from jacobtolar
[ https://gitbox.apache.org/repos/asf?p=avro.git;h=907558c ]

AVRO-2400: Make schema resolution behave the same as previous versions (#526)

* [AVRO-2400] Make schema resolution behave the same as previous versions

* AVRO-2400 make same schema resolution changes to SchemaCompatibility

* make style check happy

* fix failing tests

* AVRO-2400 fix checkstyle issue

(cherry picked from commit aa972ced3c001e0d9d8de6cd5013a1cb3b989551)


> Avro 1.9.0 can't resolve schemas that can be resolved in 1.8.2
> --------------------------------------------------------------
>
>                 Key: AVRO-2400
>                 URL: https://issues.apache.org/jira/browse/AVRO-2400
>             Project: Apache Avro
>          Issue Type: Bug
>          Components: java
>            Reporter: Jacob Tolar
>            Assignee: Jacob Tolar
>            Priority: Blocker
>             Fix For: 1.10.0, 1.9.1
>
>
> The failure occurs in ResolvingGrammarGenerator when reader and writer schema 
> have an array of records with different full names (e.g. different 
> namespace). 
> {code:java}
> Exception in thread "main" java.lang.ClassCastException: 
> org.apache.avro.Resolver$ReaderUnion cannot be cast to 
> org.apache.avro.Resolver$Container{code}
> Avro 1.8.2 allowed this behavior but it now fails in 1.9.0. Looking at the 
> jiras and code, I don't believe this was intentional ( AVRO-2275,  
> [https://github.com/apache/avro/commit/39d959e1c6a1f339f03dab18289e47f27c10be7f]
>   ).
>  
> It looks like there were some attempts to keep compatibility ( 
> [https://github.com/apache/avro/blob/branch-1.9/lang/java/avro/src/main/java/org/apache/avro/Resolver.java]
>  , e.g. see the commented out check for w.getFullName() in resolve()) but 
> this case was missed.
>  
> See this simple example to reproduce. 
> [https://gist.github.com/jacobtolar/c88d43ab4e8767227891e5cdc188ffad]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to