Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
The AvroSchemaRegistry is used to specify the schema/data format for Record Readers/Writers. The Readers/Writers are implemented for any data format (JSON, CSV, e.g.), which have their own rules for naming conventions and allowed characters, etc. However AvroSchemaRegistry imposes the Avro rules for naming, which can make it difficult/impossible to represent certain data formats as records, such as Mongo documents with operators as field names (such as $set).
An improvement would be to add a boolean property to AvroSchemaRegistry (defaulted to true to retain current behavior) called "Validate Field Names". In the AvroSchemaValidator and AvroSchemaRegistry (both places where the schema is parsed), the value of Validate Field Names would be set on the parser using setValidate().