[ 
https://issues.apache.org/jira/browse/AVRO-1331?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Doug Cutting updated AVRO-1331:
-------------------------------

    Attachment: AVRO-1331.patch

Here's a patch that I think fixes this.

AVRO-1295 exposed an underlying bug where the default namespace, when null, 
wasn't restored correctly as the parser popped back to an outer context.  I 
suspect the reason that your schema explicitly specifies the empty string as 
its namespace was to work around this underlying bug.  When AVRO-1295 changed 
things so that the empty string was treated the same as a null namespace this 
broke that schema.
                
> Java reader backwards-compatibility breakage
> --------------------------------------------
>
>                 Key: AVRO-1331
>                 URL: https://issues.apache.org/jira/browse/AVRO-1331
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.7.5
>            Reporter: Jeremy Kahn
>         Attachments: AVRO-1331.patch, stripped-snipped.avro, 
> stripped-snipped.schema
>
>
> For some cases where we encode Avro data with Avro 1.7.4, it is not readable 
> with Avro 1.7.5-SNAPSHOT post AVRO-1295: the Java decoder is unable to 
> discover the root definitions
> Among the properties of (some) schemas that trigger this failure:
> - an explicit empty string in the root namespace and
> - uses other namespaces elsewhere in the schema, 
> - has a recursive reference to the root
> A sample schema and a sample datafile with one example encoded with that 
> schema are attached.  
> This datafile cannot be read with Java deserializers (and I believe that the 
> schema cannot be parsed by the Java schema parser).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to