Closed Chuckame closed 10 months ago
When using the UUIDSerializer for UUID fields, the logicalType is generated as following:
UUIDSerializer
UUID
logicalType
{ "type": "record", "name": "MyClass", "fields": [ { "name": "id", "type": { "type": "string", "logicalType": "uuid" } } ] }
But regarding the avro spec, this nesting seems useless as some examples are shown for decimals and dates, so we should have instead:
{ "type": "record", "name": "MyClass", "fields": [ { "name": "id", "type": "string", "logicalType": "uuid" } ] }
Same for dates using InstantSerializer where it is also nested:
{ "name": "date", "type": { "type": "long", "logicalType": "timestamp-millis" } },
It's wrong, spec is not clear, but for "complex" types (when other fields needed like logicalType or array's item), it must be wrapped inside an object.
item
When using the
UUIDSerializer
forUUID
fields, thelogicalType
is generated as following:But regarding the avro spec, this nesting seems useless as some examples are shown for decimals and dates, so we should have instead:
Same for dates using InstantSerializer where it is also nested: