Sean Policarpio created AVRO-2132:
-------------------------------------
Summary: Avro IDL: Support dot ('.') character in property
annotation names
Key: AVRO-2132
URL: https://issues.apache.org/jira/browse/AVRO-2132
Project: Avro
Issue Type: Improvement
Components: java
Affects Versions: 1.8.2
Reporter: Sean Policarpio
Unless there is a strong reason why names like @foo.bar can't be used as
property annotations in IDL, I propose an enhancement to the IDL parser to
allow it.
The major drive for this change comes from Kafka Connect; for a certain fields
– namely timestamps – additional metadata must be present in the schema when
certain consumers read the data (e.g. [the JDBC
connector|https://github.com/confluentinc/kafka-connect-jdbc]). What I hoped
when using IDL was to write the following for a record field:
{code:java}
union {null, @connect.version(1)
@connect.name("org.apache.kafka.connect.data.Timestamp") long} queryTime;{code}
so that the following would be available in the schemata:
{code:java}
{
"name": "queryTime",
"type": [
"null",
{
"type": "long",
"connect.version": 1,
"connect.name": "org.apache.kafka.connect.data.Timestamp"
}
],
"default": null
}{code}
Unfortunately, both connect.version and connect.name are unacceptable by the
parser.
The change for this is quite minimal as it can be based on AVRO-1267.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)