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 Sergii Khomenko <kh...@brainscode.com> on 2013/04/10 13:01:09 UTC

Troubles with solr replication

Hi guys,

I have some problems with Solr replication and can see some
unexpected behavior.
Would be nice to have some answers where am I wrong, or what is the best
way to solve the problem.


I have a replication master-slave. http://192.168.2.204:8080/solr/ is
master and http://192.168.2.174:8080/solr/ is slave. With quite simple
config.

<requestHandler name="/replication" class="solr.ReplicationHandler">
<lst name="master">
<str name="enable">
false
</str>
<str name="replicateAfter">
commit
</str>
<str name="replicateAfter">
startup
</str>
<str name="confFiles">
schema.xml,boosting.txt
</str>
</lst>
<lst name="slave">
<str name="enable">
true
</str>
<str name="masterUrl">http://192.168.2.204:8080/solr/replication</str>
<str name="pollInterval">00:00:60</str>
<str name="httpConnTimeout">
5000
</str>
<str name="httpReadTimeout">
10000
</str>
</lst>
</requestHandler>

The main idea when I started playing around Solr is to replicate some
boosting values.
I wanted to use confFile option for it. An here is my first problem. I
wasn't able to replicate files from master. On slave I was able to see only
schema.xml.

I wanted to check, do I actually have the files and everything correct in
solr config.
So I checked on master the file list and it returns the list of all files
http://192.168.2.204:8080/solr/replication?command=filelist&indexversion=1341328964983


but for slave I can't see anything
http://192.168.2.174:8080/solr/replication?command=filelist&indexversion=1341328964983

returns

<str name="status">invalid indexversion</str>

Seems like we don't have this index version.

After I tried to find what is wrong with that. On slave
http://192.168.2.174:8080/solr/replication?command=indexversion
returns only 0

<long name="indexversion">0</long>
> <long name="generation">0</long>


on master I could see the version of current index

<long name="indexversion">1341328964983</long>
> <long name="generation">3</long>


but slave's
http://192.168.2.174:8080/solr/admin/stats.jsp I can the the right version

indexVersion : 1341328964983
> generation : 3


Also when I checked the solr log.

> [org.apache.solr.handler.SnapPuller] Master at:
> http://192.168.2.204:8080/solr/replication is not available. Index fetch
> failed. Exception: Connection refused


BTW, I was able to fetch the replication file with wget directly.

So my question is: What is wrong with my replication or Solr?
About version, I use some legacy version of Solr: Solr Specification
Version: 3.5.0.2011.11.22.14.54.38, because we have some legacy systems
here.

And another question what is the best way to migrate to the latest version.
I mean to keep alive all the boosting infrastructure based on
ExternalFileField options.

Thank you in advance for your time and help you can provide,
Sergii