13

I'm having trouble configuring a Sitecore 7.2 production environment and noticed some weird things on the CM environment..

After a few updates to the sitecore_master_index the jobs to update the index get stuck in the job queue and never get progressed and subsequently a ton of jobs get queued up (I'm using the Job Viewer to examine the Queue). I can't find anything in the Crawling log and no exceptions in the normal log. When I try to rebuild the index I get a "queued" message.

The slightly unusual thing is (I know it's not recommended practice to expose master content from the cd server unless necessary), that I have syncmaster strategy configured for a separate index rather than just the sitecore_master_index but can't see how this would cause jobs to back up.

I know I haven't provided a huge amount of detail, but does anyone know of any reason of why this would happen or if there is a way to make sure these jobs die after a certain amount of time?

  • Is there anyway for you to provide stripped down default and crawling logs, with enough contextual information to at least let the community take a look at what's going on? – Justin Laster Oct 4 '16 at 19:19
  • Have you tried using Process Monitor to see if you have some permission issues. When I have had indexes fail in the past and not report any exceptions, it has mainly been permissions from an AV or a GP change. technet.microsoft.com/en-us/sysinternals/processmonitor.aspx – Chris Auer Oct 4 '16 at 19:20
  • Do you have any custom code that might be pausing indexing? – Jameson Gagnepain Oct 4 '16 at 19:21
  • There's no custom code I'm aware of that could pause the index. Thanks @dnstommy I will check the Process monitor. I'll also dig out some log info, but I haven't found anything significant so far. – Ian Graham Oct 4 '16 at 20:17
  • 3
    Any comment from the down voter? -quite discouraging as it is entirely plausible that someone has encountered this issue before. I'm trying to provide info, I will update the post. – Ian Graham Oct 4 '16 at 20:23
6

Setting ContentSearch.VerboseLogging to true can help give you diagnostic info on search index activity. Or a set of memory dumps when the thread appears to hang.

You may benefit from using the verbose logging along with this patch to turn up the details . . .

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
  <sitecore>
    <events>
      <event name="indexing:start">
        <patch:attribute name="timingLevel">high</patch:attribute>
      </event>
      <event name="indexing:start:remote">
        <patch:attribute name="timingLevel">high</patch:attribute>
      </event>
      <event name="indexing:end">
        <patch:attribute name="timingLevel">high</patch:attribute>
      </event>
      <event name="indexing:end:remote">
        <patch:attribute name="timingLevel">high</patch:attribute>
      </event>
    </events>
  </sitecore>
</configuration>
  • That's a good suggestion, I will try that. – Ian Graham Oct 4 '16 at 20:25
4

With the help of Sitecore support I managed to resolve this issue.

The issue was occurring due to a number of jobs flooding the queue - this was due to the SyncMaster strategy.

The fix was to change the index strategy to intervalAsyncMaster in the index configuration config

<strategies hint="list:AddStrategy">
          <!-- NOTE: order of these is controls the execution order -->
          <strategy ref="contentSearch/indexUpdateStrategies/intervalAsyncMaster" /> 
  </strategies>

and then to turn off the CheckForThreshold setting in the index default configuration.

 <intervalAsyncMaster type="Sitecore.ContentSearch.Maintenance.Strategies.IntervalAsynchronousStrategy, Sitecore.ContentSearch">
      <param desc="database">master</param>
      <param desc="interval">00:00:05</param>
      <!-- Whether or not a full index rebuild should be triggered when the number of items in the history engine exceeds the number specified 
           in ContentSearch.FullRebuildItemCountThreshold. -->
      <CheckForThreshold>false</CheckForThreshold>
    </intervalAsyncMaster>
1

If the Event Queue table in the database gets clogged you will have a hard time ever getting those index jobs to finish. You might need to truncate this table just to move forward.

Check out this thread on Sitecore Community

Also read this blog post which gives additional troubleshooting and configuration tips: https://sitecorebasics.wordpress.com/2011/05/28/is-your-sitecore-publishing-stucks/

  • Thanks, Jan. I originally did think it was this and truncated the event queue, but still no luck. I've seen that post, but will go over it again just to rule anything out. – Ian Graham Oct 5 '16 at 6:01
1

I strongly suggest you look at this post, because you're probably having a similar problem:

Lucene Deadlock

  • Thanks. Looks very similar - I'm currently trying some of the suggestions – Ian Graham Oct 5 '16 at 20:02

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.