You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by "Turner, Robbin J" <Ro...@boeing.com> on 2010/06/10 19:05:33 UTC

Schema not replicating when using multicore property parameter

If someone has done this it would be helpful for some assistance.  I have a master/slave multicore setup where I'm using the solr properties in the solr config.  But with the below configuration, the schema is not moving when it has been updated.  Replication is working fine and all the parameters seem to be applied.



<requestHandler name="/replication" class="solr.ReplicationHandler" >

  <lst name="master">

   <str name="enable">${enable.master:false}</str>

   <str name="replicateAfter">commit</str>

   <str name="confFiles">${solr.core.schemaName}</str>

  </lst>

  <lst name="slave">

   <str name="enable">${enable.slave:false}</str>

   <str name="masterUrl">${masterURL}/${solr.core.name}/replication</str>

   <str name="pollInterval">${pollInterval}</str>

  </lst>

</requestHandler>


I have had  another master/slave setup without the parameter and the schema get's replicated to the slave if there is an update.  When I make a change and deploy the schema to the master it is not replicating to the slaves as I would expect or have seen on my other deployments where the shema name is hardcode.   If someone has some pointer I would appreciate it.


Thanks
Robbin


RE: Schema not replicating when using multicore property parameter

Posted by "Turner, Robbin J" <Ro...@boeing.com>.
Yes.  I'm guess I'm not asking the question correctly.  I need it as a property as I have 15 cores under this one jvm.  They share the same solrconfig.xml.  Each core has a different schema file named for that core.  So hence using the property.

I'm having a problem in that all the other property parameters but this one are working.  So have I found another bug? Or is there an explanation.

robbin

-----Original Message-----
From: Peter Karich [mailto:peathal@yahoo.de] 
Sent: Friday, June 11, 2010 4:02 AM
To: solr-user@lucene.apache.org
Subject: Re: Schema not replicating when using multicore property parameter

Do you need it as property or could you use the solrconfig.xml directly?
this worked in my case ...

Regards,
Peter.

PS: Here is my snippet:

 <requestHandler name="/replication" class="solr.ReplicationHandler"
enable="${replication.master:false}" >
      <lst name="master">
        <!--Replicate on 'startup' and 'commit'. 'optimize' is also a
valid value for replicateAfter. -->
        <str name="replicateAfter">optimize</str>
        <str
name="confFiles">solrconfig.xml,schema.xml,stopwords.txt,synonyms.txt,protwords.txt</str>
     </lst>
  </requestHandler>

  <requestHandler name="/replication" class="solr.ReplicationHandler"
enable="${replication.slave:true}">
      <lst name="slave">
        <!-- fully qualified url for the replication handler of master.
              It is possible to pass on this as a request param for the
fetchindex command-->
        <str name="masterUrl">http://host:port/solr/replication</str>

        <!--Interval in which the slave should poll master. Format is
HH:mm:ss
            If this is absent slave does not poll automatically. But a
fetchindex can be triggered from the admin or the http API -->
        <str name="pollInterval">00:30:00</str>
    </lst>
  </requestHandler>

Then you will need the properties file only on the master side with
replication.master=true
replication.slave=false

> Yes all the parameters work.  This is from the documentation on the wiki for Core Admin.  I also use ${solr.core.dataDir}.  According to the wiki these are an automatic addition to the core scope.
>
> robbin
>
>
> -----Original Message-----
> From: Peter Karich [mailto:peathal@yahoo.de] 
> Sent: Thursday, June 10, 2010 3:09 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Schema not replicating when using multicore property parameter
>
> So the 'enable.master' property works and the 'solr.core.schemaName' not?
>
> Maybe solr.core is reservered? -> try another name.
> If you want to externalize the properties then another solution could be
> to import the whole xml snippet (<requestHandler
> ...>...</requestHanddler>) via xml include:
> http://wiki.apache.org/solr/SolrConfigXml#XInclude
>
> Regards,
> Peter.
>
>   
>> If someone has done this it would be helpful for some assistance.  I have a master/slave multicore setup where I'm using the solr properties in the solr config.  But with the below configuration, the schema is not moving when it has been updated.  Replication is working fine and all the parameters seem to be applied.
>>
>>
>>
>> <requestHandler name="/replication" class="solr.ReplicationHandler" >
>>
>>   <lst name="master">
>>
>>    <str name="enable">${enable.master:false}</str>
>>
>>    <str name="replicateAfter">commit</str>
>>
>>    <str name="confFiles">${solr.core.schemaName}</str>
>>
>>   </lst>
>>
>>   <lst name="slave">
>>
>>    <str name="enable">${enable.slave:false}</str>
>>
>>    <str name="masterUrl">${masterURL}/${solr.core.name}/replication</str>
>>
>>    <str name="pollInterval">${pollInterval}</str>
>>
>>   </lst>
>>
>> </requestHandler>
>>
>>
>> I have had  another master/slave setup without the parameter and the schema get's replicated to the slave if there is an update.  When I make a change and deploy the schema to the master it is not replicating to the slaves as I would expect or have seen on my other deployments where the shema name is hardcode.   If someone has some pointer I would appreciate it.
>>
>>
>> Thanks
>> Robbin
>>
>>
>>   
>>     
>
>   


-- 
http://karussell.wordpress.com/


Re: Schema not replicating when using multicore property parameter

Posted by Peter Karich <pe...@yahoo.de>.
Do you need it as property or could you use the solrconfig.xml directly?
this worked in my case ...

Regards,
Peter.

PS: Here is my snippet:

 <requestHandler name="/replication" class="solr.ReplicationHandler"
enable="${replication.master:false}" >
      <lst name="master">
        <!--Replicate on 'startup' and 'commit'. 'optimize' is also a
valid value for replicateAfter. -->
        <str name="replicateAfter">optimize</str>
        <str
name="confFiles">solrconfig.xml,schema.xml,stopwords.txt,synonyms.txt,protwords.txt</str>
     </lst>
  </requestHandler>

  <requestHandler name="/replication" class="solr.ReplicationHandler"
enable="${replication.slave:true}">
      <lst name="slave">
        <!-- fully qualified url for the replication handler of master.
              It is possible to pass on this as a request param for the
fetchindex command-->
        <str name="masterUrl">http://host:port/solr/replication</str>

        <!--Interval in which the slave should poll master. Format is
HH:mm:ss
            If this is absent slave does not poll automatically. But a
fetchindex can be triggered from the admin or the http API -->
        <str name="pollInterval">00:30:00</str>
    </lst>
  </requestHandler>

Then you will need the properties file only on the master side with
replication.master=true
replication.slave=false

> Yes all the parameters work.  This is from the documentation on the wiki for Core Admin.  I also use ${solr.core.dataDir}.  According to the wiki these are an automatic addition to the core scope.
>
> robbin
>
>
> -----Original Message-----
> From: Peter Karich [mailto:peathal@yahoo.de] 
> Sent: Thursday, June 10, 2010 3:09 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Schema not replicating when using multicore property parameter
>
> So the 'enable.master' property works and the 'solr.core.schemaName' not?
>
> Maybe solr.core is reservered? -> try another name.
> If you want to externalize the properties then another solution could be
> to import the whole xml snippet (<requestHandler
> ...>...</requestHanddler>) via xml include:
> http://wiki.apache.org/solr/SolrConfigXml#XInclude
>
> Regards,
> Peter.
>
>   
>> If someone has done this it would be helpful for some assistance.  I have a master/slave multicore setup where I'm using the solr properties in the solr config.  But with the below configuration, the schema is not moving when it has been updated.  Replication is working fine and all the parameters seem to be applied.
>>
>>
>>
>> <requestHandler name="/replication" class="solr.ReplicationHandler" >
>>
>>   <lst name="master">
>>
>>    <str name="enable">${enable.master:false}</str>
>>
>>    <str name="replicateAfter">commit</str>
>>
>>    <str name="confFiles">${solr.core.schemaName}</str>
>>
>>   </lst>
>>
>>   <lst name="slave">
>>
>>    <str name="enable">${enable.slave:false}</str>
>>
>>    <str name="masterUrl">${masterURL}/${solr.core.name}/replication</str>
>>
>>    <str name="pollInterval">${pollInterval}</str>
>>
>>   </lst>
>>
>> </requestHandler>
>>
>>
>> I have had  another master/slave setup without the parameter and the schema get's replicated to the slave if there is an update.  When I make a change and deploy the schema to the master it is not replicating to the slaves as I would expect or have seen on my other deployments where the shema name is hardcode.   If someone has some pointer I would appreciate it.
>>
>>
>> Thanks
>> Robbin
>>
>>
>>   
>>     
>
>   


-- 
http://karussell.wordpress.com/


RE: Schema not replicating when using multicore property parameter

Posted by "Turner, Robbin J" <Ro...@boeing.com>.
Yes all the parameters work.  This is from the documentation on the wiki for Core Admin.  I also use ${solr.core.dataDir}.  According to the wiki these are an automatic addition to the core scope.

robbin


-----Original Message-----
From: Peter Karich [mailto:peathal@yahoo.de] 
Sent: Thursday, June 10, 2010 3:09 PM
To: solr-user@lucene.apache.org
Subject: Re: Schema not replicating when using multicore property parameter

So the 'enable.master' property works and the 'solr.core.schemaName' not?

Maybe solr.core is reservered? -> try another name.
If you want to externalize the properties then another solution could be
to import the whole xml snippet (<requestHandler
...>...</requestHanddler>) via xml include:
http://wiki.apache.org/solr/SolrConfigXml#XInclude

Regards,
Peter.

> If someone has done this it would be helpful for some assistance.  I have a master/slave multicore setup where I'm using the solr properties in the solr config.  But with the below configuration, the schema is not moving when it has been updated.  Replication is working fine and all the parameters seem to be applied.
>
>
>
> <requestHandler name="/replication" class="solr.ReplicationHandler" >
>
>   <lst name="master">
>
>    <str name="enable">${enable.master:false}</str>
>
>    <str name="replicateAfter">commit</str>
>
>    <str name="confFiles">${solr.core.schemaName}</str>
>
>   </lst>
>
>   <lst name="slave">
>
>    <str name="enable">${enable.slave:false}</str>
>
>    <str name="masterUrl">${masterURL}/${solr.core.name}/replication</str>
>
>    <str name="pollInterval">${pollInterval}</str>
>
>   </lst>
>
> </requestHandler>
>
>
> I have had  another master/slave setup without the parameter and the schema get's replicated to the slave if there is an update.  When I make a change and deploy the schema to the master it is not replicating to the slaves as I would expect or have seen on my other deployments where the shema name is hardcode.   If someone has some pointer I would appreciate it.
>
>
> Thanks
> Robbin
>
>
>   


Re: Schema not replicating when using multicore property parameter

Posted by Peter Karich <pe...@yahoo.de>.
So the 'enable.master' property works and the 'solr.core.schemaName' not?

Maybe solr.core is reservered? -> try another name.
If you want to externalize the properties then another solution could be
to import the whole xml snippet (<requestHandler
...>...</requestHanddler>) via xml include:
http://wiki.apache.org/solr/SolrConfigXml#XInclude

Regards,
Peter.

> If someone has done this it would be helpful for some assistance.  I have a master/slave multicore setup where I'm using the solr properties in the solr config.  But with the below configuration, the schema is not moving when it has been updated.  Replication is working fine and all the parameters seem to be applied.
>
>
>
> <requestHandler name="/replication" class="solr.ReplicationHandler" >
>
>   <lst name="master">
>
>    <str name="enable">${enable.master:false}</str>
>
>    <str name="replicateAfter">commit</str>
>
>    <str name="confFiles">${solr.core.schemaName}</str>
>
>   </lst>
>
>   <lst name="slave">
>
>    <str name="enable">${enable.slave:false}</str>
>
>    <str name="masterUrl">${masterURL}/${solr.core.name}/replication</str>
>
>    <str name="pollInterval">${pollInterval}</str>
>
>   </lst>
>
> </requestHandler>
>
>
> I have had  another master/slave setup without the parameter and the schema get's replicated to the slave if there is an update.  When I make a change and deploy the schema to the master it is not replicating to the slaves as I would expect or have seen on my other deployments where the shema name is hardcode.   If someone has some pointer I would appreciate it.
>
>
> Thanks
> Robbin
>
>
>