Vartolomei Nicolae created AVRO-4155: ----------------------------------------
Summary: Record field names with a dot are allowed in C++ Key: AVRO-4155 URL: https://issues.apache.org/jira/browse/AVRO-4155 Project: Apache Avro Issue Type: Bug Components: c++ Reporter: Vartolomei Nicolae C++ library allows producing schemas violating the avro spec which later can’t be read. This is a foot gun which is not present in other implementations (checked C and Java). When adding a field to a record in C++ the field name is incorrectly parsed and validated [https://github.com/apache/avro/blob/82a2bc8b034de34626e2ab8bf091234122474d50/lang/c%2B%2B/impl/Schema.cc#L38] as a namespaced type name rather than as a record field name. As a result, C++ library allows dots to be present in field names https://github.com/apache/avro/blob/82a2bc8b034de34626e2ab8bf091234122474d50/lang/c%2B%2B/impl/Node.cc#L71. This is not allowed by the spec and trying to read such a schema with C implementation will fail. C implementation does proper validation. Java implementation does too. -- This message was sent by Atlassian Jira (v8.20.10#820010)