Leading dollar sign indicates parameter substitution. Embedded dollar sign should - in theory - work.
-- Jack Krupansky On Tue, Jul 28, 2015 at 1:00 PM, Thomas Seidl <re...@gmx.net> wrote: > Thanks for your answer! > > As mentioned, I'm aware of the problems with other characters like > colons and dashes. I've just never run into any issues with dollar > signs. And previously, before there was an official definition, I heard > from several people that "valid Java identifiers" was a good rule of > thumb – which would include dollar signs. > > I'd just hoped that when there would be a definition (and it's of course > very good and important that there now is one) it would more or less > mirror that rule of thumb and also allow for dollar signs. > > Now it's a pretty tough call whether to use them or not. > > Cheers, > Thomas > > On 2015-07-27 21:31, Erick Erickson wrote: > > The problem has been that field naming conventions weren't > > _ever_ defined strictly. It's not that anyone is taking away > > the ability to use other characters, rather it's codifying what's always > > been true; Solr isn't guaranteed to play nice with naming > > conventions other than those specified on the page you > > referenced, alphanumerics and underscores and _not_ starting > > with numerics. > > > > The danger is that parsing the incoming URL can run into > > "issues". Take for instance a colon. How would the parsing > > process distinguish that from a field:value separator? Or a > > hyphen when is that NOT and when is that part of a field > > name? Periods are also interesting. You can specify some > > params (e.g. facet params) with periods (f.field.prop=). No > > guarantee has ever been made that a field _name_ with a > > period won't confuse things. It happens to work, but that's > > not by design, just like dollar signs. > > > > So you can use dollar signs, but there won't be any attempts > > to support it if some component somewhere doesn't "do the > > right thing" with it. And no guarantee that there aren't current > > corner cases where that causes problems. And if it does cause > > problems, support won't be added. > > > > Best, > > Erick > > > > On Mon, Jul 27, 2015 at 10:42 AM, Thomas Seidl <re...@gmx.net> wrote: > >> Hi all, > >> > >> I've used dollar signs in field names for several years now, as an easy > >> way to escape "bad" characters (like colons) coming in from the original > >> source of the data, and I've never had any problems. Since I don't know > >> of any Solr request parameters that use a dollar sign as a special > >> character, I also wouldn't know where one might occur. > >> > >> But while I remember that the "supported" format for field names was > >> previously completely undocumented (and it was basically "almost > >> anything is supported, but some things might not work with some > >> characters"), I now read that for about a year there has been a strict > >> definition/recommendation in the Solr wiki [1] which doesn't allow for > >> dollar signs. > >> > >> [1] https://cwiki.apache.org/confluence/display/solr/Defining+Fields > >> > >> So, my question is: Is this just for an easier definition, or is there a > >> real danger of problems when using dollar signs in field names? Or, > >> differently: How "bad" of an idea is it? > >> Also, where was this definition discussed, why was this decision > >> reached? Is there really an argument against dollar signs? I have to say > >> it is really very handy to have a character available for field names > >> that is usually not allowed in programming language's identifiers (as a > >> cheap escape character). > >> > >> Thanks in advance, > >> Thomas > > >