[ https://issues.apache.org/jira/browse/AVRO-3830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17758141#comment-17758141 ]
Steve Stagg commented on AVRO-3830: ----------------------------------- Ok, I understand. The reason I saw/queried this is that the python library explicitly forbids this, and had tests to check: {code} avro.schema.parse('{"type": "enum", "name": ".foo", "symbols": ["A", "B"]}') >> InvalidName: is not a valid Avro name because it does not match the pattern >> (?:^|\.)[A-Za-z_][A-Za-z0-9_]*$ {cod} I've just looked at the java libraray, and it does seem to match the behaviour you describe. I guess in the ideal world, the spec would be made clearer, and the python library updated to match :) > Handle namespace properly if a name starts with dot > --------------------------------------------------- > > Key: AVRO-3830 > URL: https://issues.apache.org/jira/browse/AVRO-3830 > Project: Apache Avro > Issue Type: Bug > Affects Versions: 1.12.0 > Reporter: Kousuke Saruta > Assignee: Kousuke Saruta > Priority: Major > Labels: pull-request-available > Fix For: 1.12.0, 1.11.3 > > Time Spent: 0.5h > Remaining Estimate: 0h > > The specification says about the name and namespace like as follows. > ??The empty string may also be used as a namespace to indicate the null > namespace?? > ??If the name specified contains a dot, then it is assumed to be a fullname, > and any namespace also specified is ignored?? > According to this specification, if a name in a name field starts with a dot, > it's considered that the namespace is null and the corresponding namespace > field should be ignored. > For example, given the following schema. > {code} > { > "name": ".record1", > "namespace": "ns1", > "type": "record", > "fields": [] > } > {code} > The name and namespace should be "record1" and null respectively. > But the namespace is considered as "ns1" in the current Rust binding . -- This message was sent by Atlassian Jira (v8.20.10#820010)