[ 
https://issues.apache.org/jira/browse/SOLR-11441?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16193899#comment-16193899
 ] 

Hoss Man commented on SOLR-11441:
---------------------------------

according to that (totally non-official) URL, it's the automatic behavior 
inside of of any CMD script.

I'm not sure if comparing bin/solr.cmd to ant.bat is really an apples to apples 
comparison though -- in this example we're expecting 
{{-Dsolr.ltr.enabled=true}} to be passed to solr.cmd as a single String so that 
when we're looping over the args we can see it starts with "-D" and we know we 
should pass the whole thing as is to jetty when running java.exe.

In the ant.bat case, if you passed {{-Dsolr.ltr.enabled=true}} to ant, the 
ant.bat file is (probably?) designed around the assumption that it's getting 
key=val pairs -- which it's fine with because it's just going to put all of 
them in the arg list that it passes to java.exe when running the Launcher class.

...

yeah -- Launcher.java/Main.java in ant seem to be explicitly designed with the 
assumption that the OS might throw away the "=" and split the args...

https://github.com/apache/ant/blob/master/src/main/org/apache/tools/ant/Main.java#L551


> windows shell splits args on "=" so we should consider updating our docs to 
> always quote args like -Dfoo=bar or improve bin/solr.cmd to account for this
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-11441
>                 URL: https://issues.apache.org/jira/browse/SOLR-11441
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: documentation, scripts and tools
>         Environment: Windows 10, possible other versions as well (presumably 
> not when running cygwin?)
>            Reporter: Hoss Man
>
> confusing exchange with a user on freenode#solr led to this discovery...
> {noformat}
> 14:07 < sara_:#solr> New question: bin/solr start -e techproducts 
> -Dsolr.ltr.enabled=true
> 14:07 < sara_:#solr> gave me invalid command-line option:true
> 14:07 < sara_:#solr> anyone knows why?
> ...
> 15:02 < sara_:#solr> i have 6.6.1 @elyograg
> 15:03 < sara_:#solr> mine is a windows 10 machine
> ...
> 15:28 < sara_:#solr> @elyograg i just downloaded solr-7.0.0 and ran bin/solr 
> start -e techproducts -Dsolr.ltr.enabled=true
> 15:28 < sara_:#solr> it still gave me invalid command-line
> ...
> 15:29 <@hoss:#solr> sara_: the only thing i can think of is that windows 10 
> is splitting your command line on '=' ? ... can you try 
>                     quoting the entire command line arg so the script gets 
> the entire -Dsolr.ltr.enabled=true ? (not sure how to quote 
>                     strings in the windows command shell -- i would assume 
> "-Dsolr.ltr.enabled=true"
> 15:32 <@hoss:#solr> sigh ... yes, aparently windows things "=" is a shell 
> delimiter: https://ss64.com/nt/syntax-esc.html
> 15:33 <@hoss:#solr> s/shell delimiter/parameter delimiter in shell commands/
> 15:33 < sara_:#solr> you are genius!
> 15:34 < sara_:#solr> you and elyograg. you guys are fantastic. Saving me from 
> looking at the cmd script or shell script....
> 15:34 <@hoss:#solr> sara_: do i have your permission to copy/paste this 
> exchange into our bug tracker as a note about updating our docs 
>                     (and maybe making the solr.cmd smart enough to handle 
> this) ?
> 15:45 < sara_:#solr> sure of course
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to