Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
reviewing the docs for core.properties and implicit property substitution, i noticed what seems to be a bug in how implicit properties are made available for config files.
if you look at CoreDescriptor.buildSubstitutableProperties, the logic only loops over the names found in "coreProperties" – meaning that if a user doesn't explicitly set one of the "standard" properties there, then the corrisponding "solr.core.propname" implicit value (with the default value) will not be available.
the point of the implicit properties is that they should always be available for use in configs, even if the value comes from the hardcoded default, or is derived from something else.
(ie: if you put this in the example solrconfig.xml...
<lst name="defaults"> <str name="echoParams">all</str> <int name="rows">10</int> <str name="df">text</str> <str name="hoss">${solr.core.ulogDir}</str> </lst>
...solr will fail to start up, unless you also add an explicit "ulogDir=tlog" to the core.properties file – but this should work w/o the user explicitly configuring the ulogDir property