Understanding "slow background" messages
29 August 2019 10:54 AM


In more recent versions of MarkLogic Server, "slow background" error log messages were added to note and help diagnose slowness.


For "Slow background" messages, the system is timing how long it took to do some named background activity. These activities should not take long and the "slow background" message is an indicator of starvation. The activity can be slow because:

  • it is waiting on a mutex or semaphore held by some other slow thread;
  • the operating system is stalling it, possibly because it is thrashing because of low memory.

Looking at the "slow background" messages in isolation is not sufficient to understand the reason - we just know a lot of time passed since the last time we read the time of day clock. To understand the actual cause, additional evidence will need to be gathered from the time of the incident. 


  • In general, we do not time how long it takes to acquire a mutex or semaphore as reading the clock is usually more expensive than getting a mutex or semaphore.
  • We do not time things that usually take about a microsecond.
  • We do time things that usually take about a millisecond.

Related Articles

Knowledgebase: Understanding Slow Infrastructure Notifications

Knowledgebase: Understanding slow 'journal frame' entries in the ErrorLog

Knowledgebase: Hung Messages in the ErrorLog

(1 vote(s))
Not helpful

Comments (0)