Return-Path: X-Original-To: apmail-avro-user-archive@www.apache.org Delivered-To: apmail-avro-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 867CB7412 for ; Sat, 3 Sep 2011 00:40:34 +0000 (UTC) Received: (qmail 88931 invoked by uid 500); 3 Sep 2011 00:40:34 -0000 Delivered-To: apmail-avro-user-archive@avro.apache.org Received: (qmail 88638 invoked by uid 500); 3 Sep 2011 00:40:33 -0000 Mailing-List: contact user-help@avro.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@avro.apache.org Delivered-To: mailing list user@avro.apache.org Received: (qmail 88630 invoked by uid 99); 3 Sep 2011 00:40:33 -0000 Received: from minotaur.apache.org (HELO minotaur.apache.org) (140.211.11.9) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 03 Sep 2011 00:40:33 +0000 Received: from localhost (HELO [10.0.0.231]) (127.0.0.1) (smtp-auth username scottcarey, mechanism login) by minotaur.apache.org (qpsmtpd/0.29) with ESMTP; Sat, 03 Sep 2011 00:40:33 +0000 User-Agent: Microsoft-MacOutlook/14.12.0.110505 Date: Fri, 02 Sep 2011 17:42:06 -0700 Subject: Re: Can the dollar sign be a valid character in a schema name? From: Scott Carey Sender: Scott Carey To: "user@avro.apache.org" Message-ID: Thread-Topic: Can the dollar sign be a valid character in a schema name? In-Reply-To: Mime-version: 1.0 Content-type: text/plain; charset="US-ASCII" Content-transfer-encoding: 7bit The spec http://avro.apache.org/docs/1.5.3/spec.html#Names states that names must: * start with [A-Za-z_] * subsequently contain only [A-Za-z0-9_] Unfortunately, Java inner classes contain $. Sometimes, avro uses $ internally to disambiguate names, since if it creates a field or method with '$' in it that can't conflict with a user created one. Can you open a JIRA to discuss this limitation further? Thanks! -Scott On 8/30/11 10:26 PM, "Chris Wilkes" wrote: >Ran into an issue today with avro 1.5.3 where someone defined a enum >as a inner class: > >public class Foo { > public static enum Bar { ONE, TWO } >} > >And Schema.validateName complained about the name Foo$Bar. Is there >any reason to have this restriction?