4

I'm using Lucene for Search in Load balanced environment. Indexes are working fine, but sometimes index is updating in only one of the servers. If we rebuild the index manually then its showing proper results. I'm using PublishEnd strategy and Sitecore is configured to use SwitchOnRebuildLuceneIndex index type.

I have 1 CM, 2 CD servers.

Please suggest best approach to deal with Lucene in Multi-server environment.

  • What is the Index Type you are using, is it LuceneIndex or SwitchOnRebuildLuceneIndex. Also, please update the question with a brief description of your infrastructure like number of Servers, Job Server and Scalability Settings. This issue tends to occur when the Scalability is not properly set. – Hishaam Namooya Jan 3 '17 at 4:53
4

The best way to fix this would be to move to SOLR - really its the safest way to ensure that the index is the same for all delivery servers. On top of that you get additional things like the query cache, better language indexing and better scalability with Solr Cloud.

If you absolutely must stay with Lucene, you could setup the CM server to build the sitecore_web_index on publish end, and then run a job/process to copy the index files from the CM server to the CD servers. This would make sure that all the CD servers had the updated index at the same time. Obviously, you would want to set all the indexes to manual updates on the delivery servers.

  • 1
    Just to add to Richard's answer, you can consult the documentation from Sitecore that backs up using SOLR in a scaled environment: doc.sitecore.net/sitecore_experience_platform/… "You must use Solr if you have a scaled environment." – Jason St-Cyr Jan 3 '17 at 13:47
  • What would be the approach for the job to copy the index files? Delete then copy? Copy over existing? Is there any risk in "corrupt" indexes for a split second? – sestocker Jan 4 '17 at 20:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.