allow specifying solr configuration file through system property to simplify 
deployment procedure in certain cases
------------------------------------------------------------------------------------------------------------------

                 Key: SOLR-1154
                 URL: https://issues.apache.org/jira/browse/SOLR-1154
             Project: Solr
          Issue Type: Improvement
    Affects Versions: 1.4
            Reporter: Jianhan
            Priority: Minor
             Fix For: 1.4


Hi,

I wanted to use this parameter to specify different solr configuration files 
for master and slave to simplify deployment procedure. Unfortunately, I can't 
dynamically replace the value of this parameter. Basically, what I want is

  <filter>
    <filter-name>SolrRequestFilter</filter-name>
    <filter-class>org.apache.solr.servlet.SolrDispatchFilter</filter-class>
    <init-param>
      <param-name>solrconfig-filename</param-name>
      <param-value>solrconfig-master.xml</param-value>
    </init-param>
</filter>

for master instance, and

  <filter>
    <filter-name>SolrRequestFilter</filter-name>
    <filter-class>org.apache.solr.servlet.SolrDispatchFilter</filter-class>
    <init-param>
      <param-name>solrconfig-filename</param-name>
      <param-value>solrconfig-slave.xml</param-value>
    </init-param>
</filter>

for slave instance.

Ideally, if I can use system property for its value like in solrconfig.xml. For 
example,


  <filter>
    <filter-name>SolrRequestFilter</filter-name>
    <filter-class>org.apache.solr.servlet.SolrDispatchFilter</filter-class>
    <init-param>
      <param-name>solrconfig-filename</param-name>
      <param-value>${solr.config.filename: solrconfig.xml}</param-value>
    </init-param>
</filter>

but I learned that in general we can't use system property in web.xml.

I realize that I can use replication of config file to achieve this, but I 
thought that creates unnecessary dependencies for slaves on master instance.

So here is my proposal:

make SolrDispatchFilter look up another init parameter, say 
'solrconfig-filename-property', and its value is a system property name, and if 
this property is set, we get the file name, otherwise nothing happens (of 
course, if both exist, 'solrconfig-filename' takes precedence). This will give 
us maximum flexibility of specifying configuration files for different 
instances.

Your thoughts?

Thanks,

Jianhan

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to