Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.9.2
-
None
Description
I have updated to Avro 1.9.2 using the avro-maven-plugin to generate the specific types.
This is working nicely, except noticed the case of:
"fields": [ { "name": "unionOfFixedDecimal", "type": ["null", { "namespace": "org.apache.avro.codegentest.testdata", "name": "FixedInUnion", "type": "fixed", "size": 12, "logicalType": "decimal", "precision": 28, "scale": 15 }] }]
This is a fixed type that has a logical type of decimal.
When the source is generated, the type is BigDecimal. However the DecimalConversion is missing and then it breaks when used.
It seems easy to workaround by manually adding the logical conversion before using.
However the fix seems to be in SpecificCompiler#getClassNamesOfPrimitiveFields which is used by #getUsedConversionClasses