Refresh synonyms.txt file via replication

2009-05-29 Thread mlathe

Hi All,
I would like to provide an admin interface (in a different system) that
would update the synonyms.txt file and automatically inform a set of Solr
instances that are being replicated to update their synonyms.txt file too.

This discussion shows a possible solution:
http://www.nabble.com/Refresh-of-synonyms.txt-without-reload-td19629361.html
Namely use the CoreAdmin system to do a RELOAD, rather than forcing tomcat
to reload the webapp.

Here is my setup:
1) I made these instances (both are separate webapps running one core named
"core", this allows me to use the CoreAdmin):
http://localhost:8080/solr_rep_master/core/admin/
http://localhost:8080/solr_rep_slave1/core/admin/
2) the master's config looks like this:

startup
commit
startup
commit
schema.xml,stopwords.txt,synonyms.txt

3) the slave's config looks like this:

http://localhost:8080/solr_rep_master/core/replication
00:00:20  
internal


First Question:
If i update the "solr_rep_master"'s conf/synonyms.txt file and GET
http://localhost:8080/solr_rep_master/admin/cores?action=RELOAD&core=core,
the config is not replicated to the slave. Isn't a "RELOAD" considered a
startup in regards to the master's replicateAfter setting?

Second Question:
If i force an empty commit, like this:
curl
http://localhost:8080/solr_rep_master/core/update?stream.body=%3Ccommit/%3E
Then the changed synonym.txt config file are replicated to the slave.
Unfortunately now I need to do a core "RELOAD" on both the master and slave
to get them to see the updated synonym.txt file. 
Is there any way to circumvent this reload? (this is what was effectively
asked in the nabble link at the top)

Thanks
--Matthias
-- 
View this message in context: 
http://www.nabble.com/Refresh-synonyms.txt-file-via-replication-tp23789187p23789187.html
Sent from the Solr - User mailing list archive at Nabble.com.



Re: Refresh synonyms.txt file via replication

2009-06-09 Thread mlathe


Shalin Shekhar Mangar wrote:
> 
>> Second Question:
>> If i force an empty commit, like this:
>> curl
>> http://localhost:8080/solr_rep_master/core/update?stream.body=%3Ccommit/%3E
>> Then the changed synonym.txt config file are replicated to the slave.
>> Unfortunately now I need to do a core "RELOAD" on both the master and
>> slave
>> to get them to see the updated synonym.txt file.
>>
> Calling RELOAD on slave should not be necessary. If a configuration file
> is
> replicated, the slave is always reloaded. Can you try using the
> analysis.txt
> on a field which has the SynonymFilterFactory enabled to see if the new
> file
> is indeed not getting used?
> 

I'm a bit confused now. It's not doing what i saw before.
Now I can't get it to replicate when i do an "empty" commit. Rather I need
to do a real data update, and a commit, then any changes to the
solr_rep_master's conf/synonyms.txt file get replicated to the slave, and
the slave seems to pick up the change without reloading.

I'm not really sure what you mean by the analysis.txt file. Do you mean the
/analysis request handler? I've been making synonyms for "solr" so it is
pretty obvious if it was picked up.

Can you explain what you expect should happen? ie
1) should the slave replicate when you do an empty commit on the master?
2) If you change a master config file, and it is replicated to the slave,
would you expect the slave to pick it up automatically, but the master will
require a reload?

Thanks
--Matthias
-- 
View this message in context: 
http://www.nabble.com/Refresh-synonyms.txt-file-via-replication-tp23789187p23951978.html
Sent from the Solr - User mailing list archive at Nabble.com.