Guðjón created AVRO-3216:
----------------------------

             Summary: Rust: failure reading multiple use of named schemas in 
file
                 Key: AVRO-3216
                 URL: https://issues.apache.org/jira/browse/AVRO-3216
             Project: Apache Avro
          Issue Type: Bug
            Reporter: Guðjón
         Attachments: weather-complex.avro

I have an avro file that contains records of a specific schema. The file is 
written using the java implementation, with the generated classes. 

The schema itself uses named schemas in a way where two or more fields use the 
same named schema. A good example of this could be this weather schema 
{code:json}
{
        "doc": "A weather reading.",
        "name": "Weather",
        "namespace": "test",
        "type": "record",
        "fields": [
                {
                        "name": "station",
                        "type": "string"
                },
                {
                        "name": "max_temp",
                        "type": "Temp"
                },
                {
                        "name": "min_temp",
                        "type": "Temp"
                }

        ]
}
{code}
with the named schema Temp being 
{code:json}
{
        "doc": "A temperature reading.",
        "name": "Temp",
        "namespace": "test",
        "type": "record",
        "fields": [
                {
                        "name": "temp",
                        "type": "long"
                }

        ]
}
{code}
The schema that is written in the file inlines the Temp schema in the case of 
the first field (max_temp) but references it by name in the second field 
(min_temp). In both java and python implementations it manages to read the file 
correctly but the avro-rs crate fails on the second field with a message:

{noformat}
panicked at 'Failure reading file: Unknown primitive type: Temp'
{noformat}

The attached file weather-complex.avro is a file written using the java library 
with generated classes and contains one record. 




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to