Suppose a schema like this - a union of a map and a record:

[
    {"type": "map", "values": "int"},
    {"type": "record", "name": "Record", fields: [{"name": "field",
"type": "int"}]}
]

In Python, unserialized maps and records are both represented as
dictionaries. So, if an Avro Python library were asked to encode this
message:

    {"field": 1}

What should it do? Should it describe the value as the map type, or
the record type, when encoding the union?

Similarly, I wonder about cases where multiple records are in a union.
I think it's easy to imagine the ambiguous cases without spelling it
all out.

Maybe this ambiguity is specific to the Python implementation, I'm not sure.

Reply via email to