avro icon indicating copy to clipboard operation
avro copied to clipboard

AVRO-4135: [Java] JSON decoding unqualified union types

Open steven-aerts opened this issue 8 months ago • 0 comments

Support unqualified type references for unions when decoding them from json. AVRO-2287 makes it unclear if type reference for a JSON encoded union needs to be qualified or not. Today all encoders use the fully qualified types except the C JSON encoder which uses the unqualified type.

In this patch we make the java JSON Decoder more lenient and let it fallback to unqualified types names when no qualified type name matches. Which matches the behavior currently implemented in the Javascript Json decoder.

This patch is an alternative for apache/avro#3373 where it is proposed to update the C library instead.

Verifying this change

This change added tests and can be verified as follows: run newly added test: org.apache.avro.io.TestJsonDecoder#testUnionTypeQualification

Documentation

  • Does this pull request introduce a new feature? no

steven-aerts avatar May 07 '25 06:05 steven-aerts