0

We have an issue in our UAT environment where the sitecore_web_index Lucene index is not getting updated on a content delivery server when content is published.

I found this solution on Stack Overflow which works, but I don't want to have to change the instance name of the application to fix the issue. It must be tied to some information in the Sitecore databases that can be reset to bring the indexing functionality back.

Does anyone know what needs to be reset to allow a CD server to resume indexing web database content properly?

Some additional context:

  • CM and CD share a single core database
  • CD sitecore_web_index is set up to use onPublishAsync strategy
  • Renaming the InstanceName fixes the issue

Some things I've tried with no success:

  • Clearing the core database's Properties table's entries with the instance name in them
  • Clearing the EventQueue, History, and PublishQueue tables on the core and web databases
  • Do you have this strategy added in config. <strategies hint="list:AddStrategy"> <strategy ref="contentSearch/indexUpdateStrategies/remoteRebuild" /> </strategies> – Umar D Feb 25 at 23:00
  • And you have EnableEventQueues set to true? <setting name="EnableEventQueues" value="true"/> – Chris Auer Feb 25 at 23:19
  • Yep. Everything works if I change the InstanceName, so I know it's not a configuration issue. – Dan Sinclair Feb 26 at 3:48
  • @DanSinclair The issue is because of the Scalability settings. You'll need to update the instance name so that Sitecore knows where the publish has been triggered – Hishaam Namooya Feb 26 at 8:12
  • You don't have to rename the instance. You can just set Publishing.PublishingInstance to the name of your CM server. I usually just set InstanceName to CM on the CM server and leave the others unnamed. – mikaelnet Feb 26 at 9:03
1

The solution requires an AppPool recycle to take effect:

  1. Execute the following SQL statement against the core database
    DELETE FROM [Properties] WHERE [Key] LIKE '%_LAST_UPDATED_TIMESTAMP%'
    
  2. Recycle the CD's AppPool

After this, you will want to rebuild the indexes on the CD so that they pick up any changes that were missed while indexing was broken.

  • I'm curious if you run this query SELECT * FROM [Properties] where [Key] like '%SITECORE_WEB_INDEX%LAST_UPDATED_TIMESTAMP' if you see two distinct results for your CM Web index and your CD Web index. I bring this up because what you're experiencing could be explained if the autogen'd InstanceName of CM and CD came back the same- in which case setting the InstanceName per server would be the true fix. – jrap Feb 26 at 19:50
  • Good question. The InstanceName is different for each server (we just set it to the server name), so they should never overlap. – Dan Sinclair Feb 26 at 19:53

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.