Hi All ,
Below given steps with help you migrating from solr 3.x to solr cloud 4.1.0-
1)You’ll need to add a parameter to your solrconfig.xml file -
section.(Error in xpath:java.lang.RuntimeException: solrconfig.xml missing
luceneMatchVersion)
Below is the setting-
<luceneMatchVersion>LUCENE_CURRENT</luceneMatchVersion>
If you however are trying to load index files that are more than one version older, you may
have to use one of the other values.
Suggestion Link - http://drupal.org/node/1392940
Comment 10 suggests in the link that LUCENE_CURRENT will make it backword compatible.
2)org.apache.solr.common.SolrException: getSolrConfigFromZK failed for core0 solrconfig.xml
We need to remove the <mainindex> and <indexdefaults> section in the solrconfig.xml .
3)org.apache.solr.common.SolrException: Schema will not work with SolrCloud mode:
_version_field must exist in schema
We need to create a version field in the schema.
<field name="_version_" type="long" indexed="true" stored="true" multiValued="false"/>
In the field type section we need to put long field definition also
<fieldType name="long" class="solr.TrieLongField" precisionStep="0"
positionIncrementGap="0"/>
4)Update the UpdateHandler in the solrconfig.xml for Transaction Logs-
<updateHandler class="solr.DirectUpdateHandler2">
<updateLog>
<str name="dir">${solr.data.dir:}</str>
</updateLog>
</updateHandler>
5)You must have a replication handler called /replication defined:
<requestHandler name="/replication" class="solr.ReplicationHandler" startup="lazy" />
6)You must have a realtime get handler called /get defined:
<requestHandler name="/get" class="solr.RealTimeGetHandler">
<lst name="defaults">
<str name="omitHeader">true</str>
</lst>
</requestHandler>
7)You must have the admin handlers defined:
<requestHandler name="/admin/" class="solr.admin.AdminHandlers" />
8)Always Start the slave in the sudo mode else there will be exceptions since the slave solr
will not be able to copy-paste some files.