Releases: linkedin/avro-util
Releases · linkedin/avro-util
0.1.5
Updated fast serializer generator to optimize the enum schema generat…
0.1.4: Added a new method to return buffered binary encoder (#19)
* Added a new method to return buffered binary encoder In Avro-1.7 and above, the default BinaryEncoder implementation is buffered, which has improved the serialization greatly, but this optimization is absent in Avro-1.4. To improve the serialization performance in Avro-1.4, this code change back-ports the buffered binary encoder implementation from Avro-1.8 to be used in Avro-1.4. By running the test: SerDeMicroBenchmark#testFastAvroSerialization with Avro-1.4, the performance is improved by more than 40% with the new buffered binary encoder (5ms vs 9ms). With the buffered binary encoder, the fast serialization performance across all the Avro versions are very similar now. This code change doesn't change the signature of AvroCompatibilityHelper#newBinaryEncoder, since we would like to keep it backward compatible, instead it adds a new method: AvroCompatibilityHelper#newBufferedBinaryEncoder to return a `Encoder` instance instead of `BinaryEncoder`. The reason of not returning `BinaryEncoder` in the new method is that `BinaryEncoder` has different kinds of contructors across different Avro versions, and it is not easy to backport the buffered binary encoder to work with BinaryEncoder interface in Avro-1.4. * Fixed Javadoc errors
0.1.3: Fast Serializer support for Avro-1.4 (#17)
* Fast Serializer support for Avro-1.4 This code change adds support for fast serializer of Avro-1.4. Now, fast serializer/de-serializer are available for Avro 1.4/1.7/1.8. This special logic for Avro-1.4 in Fast Serializer generation is for enum/fixed since those two types in Avro-1.4 are implementing differently from other versions, and the corresponding Schema couldn't be extracted from the generic implementations (GenericData.EnumSymbol and GenericData.Fixed). * Added comment in `SchemaAssistant#isNamedType` method