[
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]