Chris M. Hostetter created SOLR-14889:
-----------------------------------------
Summary: improve templated variable escaping in ref-guide
_config.yml
Key: SOLR-14889
URL: https://issues.apache.org/jira/browse/SOLR-14889
Project: Solr
Issue Type: Task
Security Level: Public (Default Security Level. Issues are Public)
Components: documentation
Reporter: Chris M. Hostetter
Assignee: Chris M. Hostetter
SOLR-14824 ran into windows failures when we switching from using a hardcoded
"relative" path to the solrRootPath to using groovy/project variables to get
the path. the reason for the failures was that the path us used as a variable
tempted into {{_config.yml.template}} to build the {{_config.yml}} file, but on
windows the path seperater of '\' was being parsed by jekyll/YAML as a string
escape character.
(This wasn't a problem we ran into before, even on windows, prior to the
SOLR-14824 changes, because the hardcoded relative path only used '/'
delimiters, which (j)ruby was happy to work with, even on windows.
As Uwe pointed out when hotfixing this...
{quote}Problem was that backslashes are used to escape strings, but windows
paths also have those. Fix was to add StringEscapeUtils, but I don't like this
too much. Maybe we find a better solution to make special characters in those
properties escaped correctly when used in strings inside templates.
{quote}
...the current fix of using {{StringEscapeUtils.escapeJava}} - only for this
one variable -- doesn't really protect other variables that might have special
charactes in them down the road, and while "escapeJava" work ok for the "\"
issue, it isn't neccessarily consistent with all YAML escapse, which could lead
to even weird bugs/cofusion down the road.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]