Details
Description
The Avro spec does not allow for spaces ' ' in enums. However, Python Avro does not error out or reject enums with spaces in them.
This is an example enum schema which was accepted by the python package:
{ "symbols": [ "top left", "top center", "top right", "center left", "center center", "center right", "bottom left", "bottom center", "bottom right" ], "type": "enum", "namespace": "", "name": "postion_enum" }
The same schema, when read by the Java library errors out at top left as expected:
Caused by: org.shaded.apache.avro.SchemaParseException: Illegal character in: top left at org.shaded.apache.avro.Schema.validateName(Schema.java:1151) at org.shaded.apache.avro.Schema.access$200(Schema.java:81) at org.shaded.apache.avro.Schema$EnumSchema.<init>(Schema.java:749) at org.shaded.apache.avro.Schema.parse(Schema.java:1300) at org.shaded.apache.avro.Schema.parse(Schema.java:1340) at org.shaded.apache.avro.Schema.parse(Schema.java:1269) at org.shaded.apache.avro.Schema$Parser.parse(Schema.java:1032) at org.shaded.apache.avro.Schema$Parser.parse(Schema.java:1020)
Attachments
Issue Links
- relates to
-
AVRO-1725 Enum schema exhibits same restriction to enum symbols as to names
- Closed
- links to