Refresh synonyms.txt file via replication
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
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.