# Throttle Elasticsearch warmer threads

**URL:** <https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333>\
**Category:** Elasticsearch\
**Created:** [April 5, 2017, 3:44pm UTC](https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333 "2017-04-05T15:44:30Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Zaid\_Amir](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/zaid_amir/32/54679_2.png) [@Zaid\_Amir](https://discuss.elastic.co/u/Zaid_Amir)\
**Post date:** [April 5, 2017, 3:44pm UTC](https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333/1 "2017-04-05T15:44:31Z")

</div>

Hi,

I am evaluating my cluster performance after migrating to 5.2. Everything looks fine from indexing to search to updates in terms of thread pools. whenever I run the thread\_pool cat API all the queues are empty or have a couple of requests being processed except for the warmer threads. Same can be said about viewing hot threads as it shows warmers as the majority of threads running at any given time; almost 99% of the hot threads are warmers.

I want to know if there is a way to throttle the warmer threads, delay the threads from constantly running or if there is a way to disable warmers temporarely as I am experiencing some high CPU usage compared to what I had in ES 1.7 before upgradiing and I just want to know if this is caused by the warmer threads or from one of my requests.

---

<div class="post-metadata">

**Author:** ![dakrone](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dakrone/32/23351_2.png) [@dakrone](https://discuss.elastic.co/u/dakrone)\
**Post date:** [April 5, 2017, 11:10pm UTC](https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333/2 "2017-04-05T23:10:58Z")

</div>

Can you share your hot\_threads output? Which warmer is using the CPU?

---

<div class="post-metadata">

**Author:** ![Zaid\_Amir](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/zaid_amir/32/54679_2.png) [@Zaid\_Amir](https://discuss.elastic.co/u/Zaid_Amir)\
**Post date:** [April 6, 2017, 12:49pm UTC](https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333/3 "2017-04-06T12:49:16Z")

</div>

You can check the Hot\_Threads output here: [https://drive.google.com/file/d/0B3lcT\_0qgTuGTzZTQkxSc2ZrLXc/view?usp=sharing](https://drive.google.com/file/d/0B3lcT_0qgTuGTzZTQkxSc2ZrLXc/view?usp=sharing)

Here is a snippet as Discuss did not allow me to paste the entire thing:

> 73.2% (365.9ms out of 500ms) cpu usage by thread 'elasticsearch[Zoolz\_06][warmer][T#5]'  
> 2/10 snapshots sharing following 21 elements  
> org.apache.lucene.index.MultiTermsEnum$TermMergeQueue.fillTop(MultiTermsEnum.java:429)  
> org.apache.lucene.index.MultiTermsEnum.pullTop(MultiTermsEnum.java:267)  
> org.apache.lucene.index.MultiTermsEnum.next(MultiTermsEnum.java:305)  
> org.apache.lucene.index.MultiDocValues$OrdinalMap.(MultiDocValues.java:554)  
> org.apache.lucene.index.MultiDocValues$OrdinalMap.build(MultiDocValues.java:511)  
> org.apache.lucene.index.MultiDocValues$OrdinalMap.build(MultiDocValues.java:475)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.buildOrdinalMap(ParentChildIndexFieldData.java:175)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.localGlobalDirect(ParentChildIndexFieldData.java:199)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.localGlobalDirect(ParentChildIndexFieldData.java:71)  
> org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.lambda$load$1(IndicesFieldDataCache.java:159)  
> org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache$$Lambda$1674/1438035241.load(Unknown Source)  
> org.elasticsearch.common.cache.Cache.computeIfAbsent(Cache.java:398)  
> org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.load(IndicesFieldDataCache.java:154)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.loadGlobal(ParentChildIndexFieldData.java:160)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.loadGlobal(ParentChildIndexFieldData.java:71)  
> org.elasticsearch.index.IndexWarmer$FieldDataWarmer.lambda$warmReader$1(IndexWarmer.java:142)  
> org.elasticsearch.index.IndexWarmer$FieldDataWarmer$$Lambda$1672/1908661636.run(Unknown Source)  
> org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:527)  
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)  
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)  
> java.lang.Thread.run(Thread.java:745)  
> 8/10 snapshots sharing following 19 elements  
> org.apache.lucene.index.MultiTermsEnum.next(MultiTermsEnum.java:301)  
> org.apache.lucene.index.MultiDocValues$OrdinalMap.(MultiDocValues.java:554)  
> org.apache.lucene.index.MultiDocValues$OrdinalMap.build(MultiDocValues.java:511)  
> org.apache.lucene.index.MultiDocValues$OrdinalMap.build(MultiDocValues.java:475)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.buildOrdinalMap(ParentChildIndexFieldData.java:175)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.localGlobalDirect(ParentChildIndexFieldData.java:199)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.localGlobalDirect(ParentChildIndexFieldData.java:71)  
> org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.lambda$load$1(IndicesFieldDataCache.java:159)  
> org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache$$Lambda$1674/1438035241.load(Unknown Source)  
> org.elasticsearch.common.cache.Cache.computeIfAbsent(Cache.java:398)  
> org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.load(IndicesFieldDataCache.java:154)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.loadGlobal(ParentChildIndexFieldData.java:160)  
> org.elasticsearch.index.fielddata.plain.ParentChildIndexFieldData.loadGlobal(ParentChildIndexFieldData.java:71)  
> org.elasticsearch.index.IndexWarmer$FieldDataWarmer.lambda$warmReader$1(IndexWarmer.java:142)  
> org.elasticsearch.index.IndexWarmer$FieldDataWarmer$$Lambda$1672/1908661636.run(Unknown Source)  
> org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:527)  
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)  
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)  
> java.lang.Thread.run(Thread.java:745)

---

<div class="post-metadata">

**Author:** ![Zaid\_Amir](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/zaid_amir/32/54679_2.png) [@Zaid\_Amir](https://discuss.elastic.co/u/Zaid_Amir)\
**Post date:** [April 11, 2017, 5:48pm UTC](https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333/5 "2017-04-11T17:48:18Z")

</div>

Any ideas? My cluster CPUs are averaging around 70% on normal workload

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [May 9, 2017, 5:51pm UTC](https://discuss.elastic.co/t/throttle-elasticsearch-warmer-threads/81333/6 "2017-05-09T17:51:06Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
