Latest Avro compiler (1.8.2) generates java sources for dates logical types with Joda-Time based implementations. How can I configure Avro compiler to produce sources that used Java 8 date-time API?
Avro supports logical types. A logical type is defined as a higher level representation for a primitive type. For eg, a higher level type of UUID could be represented as a primitive type string. Similarly, a higher level java. time.
Introduction to Avro converter. The avro converter allows us to convert the Apache avro object into a favored data format such as JSON, XML, CSV, etc. It has been generated for assisting data conversion and serialization depending on the Apache avro technology.
AVRO - Serialization By Generating Class. Advertisements. One can read an Avro schema into the program either by generating a class corresponding to a schema or by using the parsers library. This chapter describes how to read the schema by generating a class and Serializing the data using Avr.
Avro is an open source project that provides data serialization and data exchange services for Apache Hadoop. These services can be used together or independently. Avro facilitates the exchange of big data between programs written in any language.
Currently (avro 1.8.2) this is not possible. It's hardcoded to generate Joda date/time classes.
The current master
branch has switched to Java 8 and there is an open issue (with Pull Request) to add the ability to generate classes with java.time.*
types.
I have no idea on any kind of release schedule for whatever is currently in master
unfortunately. If you feel adventurous you can apply the patch to 1.8.2
, since in theory it should all be compatible. The underlying base types when serializing / deserializing are still integers and longs.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With