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

Oscar Westra van Holthe - Kind updated AVRO-2976:
-------------------------------------------------
    Component/s: tools
                 logical types
                 java

> IDL parsing does not support arbitrary logical types
> ----------------------------------------------------
>
>                 Key: AVRO-2976
>                 URL: https://issues.apache.org/jira/browse/AVRO-2976
>             Project: Apache Avro
>          Issue Type: Improvement
>          Components: java, logical types, tools
>    Affects Versions: 1.8.2, 1.10.0, 1.9.2, 1.10.1, 1.10.2
>            Reporter: Oscar Westra van Holthe - Kind
>            Assignee: Oscar Westra van Holthe - Kind
>            Priority: Major
>             Fix For: 1.11.1
>
>         Attachments: avro2976.zip
>
>
> When parsing Avro IDL in code, the resulting protocol types (schemas) have no 
> logical types defined, when though the properties for them are set.
>  
> Example IDL:
> {code:java}
> protocol P {
>       record R {
>               @logicalType("timestamp-micros") long uTime;
>       }
> }{code}
>  
> The following test fails on the second assert: 
> {code:java}
> @Test
> public void validateIdlLogicalTypeParsing() {
>   final ClassLoader cl = Thread.currentThread().getContextClassLoader();
>   Idl idl = new Idl(cl.getResourceAsStream("logicalTypes.avdl"), "UTF-8");
>   Protocol protocol = idl.CompilationUnit();
>   Schema fieldSchema = protocol.getType("R").getField("uTime").schema();
>   Assert.assertEquals("timestamp-micros", 
> fieldSchema.getObjectProp("logicalType"));
>   Assert.assertNotNull(fieldSchema.getLogicalType());
> }
> {code}
>  
> A minimal proof is attached.



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

Reply via email to