Timer thread slept for ms on absolute clock which is above the warn threshold of ms – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 7.14-7.15

Briefly, this error occurs when the Elasticsearch timer thread sleeps for a duration that exceeds the set warning threshold. This could be due to high system load, insufficient resources, or garbage collection pauses. To resolve this, you can increase the system resources (CPU, memory), optimize your queries and indices to reduce load, or adjust the JVM settings to minimize garbage collection pauses. Additionally, ensure your Elasticsearch version is up-to-date as some versions have known issues with timer threads.

This guide will help you check for common problems that cause the log ” timer thread slept for [{}/{}ms] on absolute clock which is above the warn threshold of [{}ms] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: threshold, threadpool, thread.

Log Context

Log “timer thread slept for [{}/{}ms] on absolute clock which is above the warn threshold of [{}ms]” classname is ThreadPool.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
try {
final long deltaMillis = newAbsoluteMillis - absoluteMillis;
if (deltaMillis > thresholdMillis) {
final TimeValue delta = TimeValue.timeValueMillis(deltaMillis);
logger.warn("timer thread slept for [{}/{}ms] on absolute clock which is above the warn threshold of [{}ms]";
delta;
deltaMillis;
thresholdMillis);
} else if (deltaMillis
<p> </p>
<p></p><div class="rmp-widgets-container rmp-wp-plugin rmp-main-container js-rmp-widgets-container js-rmp-widgets-container--1057 " data-post-id="1057"> <div class="rmp-rating-widget js-rmp-rating-widget"> <p class="rmp-heading rmp-heading--title"> How helpful was this guide? </p> <div class="rmp-rating-widget__icons"> <ul class="rmp-rating-widget__icons-list js-rmp-rating-icons-list"> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Not at all useful" data-value="1"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Somewhat useful" data-value="2"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Useful" data-value="3"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Fairly useful" data-value="4"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Very useful" data-value="5"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> </ul> </div> <p class="rmp-rating-widget__hover-text js-rmp-hover-text"></p> <button class="rmp-rating-widget__submit-btn rmp-btn js-submit-rating-btn"> Submit Rating </button> <p class="rmp-rating-widget__results js-rmp-results "> </p> <p class="rmp-rating-widget__not-rated js-rmp-not-rated rmp-rating-widget__not-rated--hidden"> </p> <p class="rmp-rating-widget__msg js-rmp-msg"></p> </div> <div class="rmp-feedback-widget js-rmp-feedback-widget"> <p class="rmp-heading rmp-heading--title"> We are sorry that this post was not useful for you! </p> <p class="rmp-heading rmp-heading--subtitle"> Let us improve this post! </p> <div class="rmp-feedback-widget__container"> <p class="rmp-feedback-widget__text"> Tell us how we can improve this post? </p> <textarea class="rmp-feedback-widget__input js-rmp-feedback-input" rows="5" id="feedback-text"></textarea> <button type="button" class="rmp-feedback-widget__btn rmp-btn rmp-btn--large js-rmp-feedback-button"> Submit Feedback </button> <div class="rmp-feedback-widget__loader js-rmp-feedback-loader"> <div></div><div></div><div></div> </div> <p class="rmp-feedback-widget__msg js-rmp-feedback-msg"></p> </div> </div> </div>
try { final long deltaMillis = newAbsoluteMillis - absoluteMillis; if (deltaMillis > thresholdMillis) { final TimeValue delta = TimeValue.timeValueMillis(deltaMillis); logger.warn("timer thread slept for [{}/{}ms] on absolute clock which is above the warn threshold of [{}ms]"; delta; deltaMillis; thresholdMillis); } else if (deltaMillis <p> </p> <p></p><div class="rmp-widgets-container rmp-wp-plugin rmp-main-container js-rmp-widgets-container js-rmp-widgets-container--1057 " data-post-id="1057"> <div class="rmp-rating-widget js-rmp-rating-widget"> <p class="rmp-heading rmp-heading--title"> How helpful was this guide? </p> <div class="rmp-rating-widget__icons"> <ul class="rmp-rating-widget__icons-list js-rmp-rating-icons-list"> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Not at all useful" data-value="1"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Somewhat useful" data-value="2"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Useful" data-value="3"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Fairly useful" data-value="4"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> <li class="rmp-rating-widget__icons-list__icon js-rmp-rating-item" data-descriptive-rating="Very useful" data-value="5"> <i class="js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star "></i> </li> </ul> </div> <p class="rmp-rating-widget__hover-text js-rmp-hover-text"></p> <button class="rmp-rating-widget__submit-btn rmp-btn js-submit-rating-btn"> Submit Rating </button> <p class="rmp-rating-widget__results js-rmp-results "> </p> <p class="rmp-rating-widget__not-rated js-rmp-not-rated rmp-rating-widget__not-rated--hidden"> </p> <p class="rmp-rating-widget__msg js-rmp-msg"></p> </div> <div class="rmp-feedback-widget js-rmp-feedback-widget"> <p class="rmp-heading rmp-heading--title"> We are sorry that this post was not useful for you! </p> <p class="rmp-heading rmp-heading--subtitle"> Let us improve this post! </p> <div class="rmp-feedback-widget__container"> <p class="rmp-feedback-widget__text"> Tell us how we can improve this post? </p> <textarea class="rmp-feedback-widget__input js-rmp-feedback-input" rows="5" id="feedback-text"></textarea> <button type="button" class="rmp-feedback-widget__btn rmp-btn rmp-btn--large js-rmp-feedback-button"> Submit Feedback </button> <div class="rmp-feedback-widget__loader js-rmp-feedback-loader"> <div></div><div></div><div></div> </div> <p class="rmp-feedback-widget__msg js-rmp-feedback-msg"></p> </div> </div> </div>
            try {
                final long deltaMillis = newAbsoluteMillis - absoluteMillis;
                if (deltaMillis > thresholdMillis) {
                    final TimeValue delta = TimeValue.timeValueMillis(deltaMillis);
                    logger.warn("timer thread slept for [{}/{}ms] on absolute clock which is above the warn threshold of [{}ms]";
                            delta;
                            deltaMillis;
                            thresholdMillis);
                } else if (deltaMillis 

 

How helpful was this guide?

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?