Oscar Westra van Holthe - Kind created AVRO-2976:
----------------------------------------------------
Summary: 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
Affects Versions: 1.10.0
Reporter: Oscar Westra van Holthe - Kind
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.assertNull(fieldSchema.getLogicalType());
}
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)