# Elasticsearch 5.4.1 - availableProcessors is already set

**URL:** <https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036>\
**Category:** Elasticsearch\
**Created:** [June 2, 2017, 8:48am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036 "2017-06-02T08:48:20Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mihai\_Cazacu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mihai_cazacu/32/2366_2.png) [@Mihai\_Cazacu](https://discuss.elastic.co/u/Mihai_Cazacu)\
**Post date:** [June 2, 2017, 8:48am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/1 "2017-06-02T08:48:20Z")

</div>

Hi,

I have upgraded elasticsearch from 5.4.0 to 5.4.1 and I have got this error:

> java.lang.IllegalStateException: availableProcessors is already set to [8], rejecting [8]  
> at io.netty.util.NettyRuntime$AvailableProcessorsHolder.setAvailableProcessors(NettyRuntime.java:51) ~[netty-common-4.1.11.Final.jar:4.1.11.Final]  
> at io.netty.util.NettyRuntime.setAvailableProcessors(NettyRuntime.java:87) ~[netty-common-4.1.11.Final.jar:4.1.11.Final]  
> at org.elasticsearch.transport.netty4.Netty4Utils.setAvailableProcessors(Netty4Utils.java:82) ~[transport-netty4-client-5.4.1.jar:5.4.1]  
> at org.elasticsearch.transport.netty4.Netty4Transport.(Netty4Transport.java:138) ~[transport-netty4-client-5.4.1.jar:5.4.1]  
> at org.elasticsearch.transport.Netty4Plugin.lambda$getTransports$0(Netty4Plugin.java:93) ~[transport-netty4-client-5.4.1.jar:5.4.1]  
> java.lang.IllegalStateException: availableProcessors is already set to [8], rejecting [8]  
> at org.elasticsearch.client.transport.TransportClient.buildTemplate(TransportClient.java:176) ~[elasticsearch-5.4.1.jar:5.4.1]  
> at io.netty.util.NettyRuntime$AvailableProcessorsHolder.setAvailableProcessors(NettyRuntime.java:51)  
> at io.netty.util.NettyRuntime.setAvailableProcessors(NettyRuntime.java:87)  
> at org.elasticsearch.transport.netty4.Netty4Utils.setAvailableProcessors(Netty4Utils.java:82)  
> at org.elasticsearch.transport.netty4.Netty4Transport.(Netty4Transport.java:138)  
> at org.elasticsearch.transport.Netty4Plugin.lambda$getTransports$0(Netty4Plugin.java:93)  
> at org.elasticsearch.client.transport.TransportClient.buildTemplate(TransportClient.java:176)  
> at org.elasticsearch.client.transport.TransportClient.(TransportClient.java:268)  
> at org.elasticsearch.transport.client.PreBuiltTransportClient.(PreBuiltTransportClient.java:127)  
> at org.elasticsearch.xpack.client.PreBuiltXPackTransportClient.(PreBuiltXPackTransportClient.java:55)  
> at org.elasticsearch.xpack.client.PreBuiltXPackTransportClient.(PreBuiltXPackTransportClient.java:50)  
> at org.elasticsearch.xpack.client.PreBuiltXPackTransportClient.(PreBuiltXPackTransportClient.java:46)

It seems that the number of available processors is already configured in that moment.  
Is there a fix for this?

Thanks,  
Mihai

---

<div class="post-metadata">

**Author:** ![Mihai\_Cazacu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mihai_cazacu/32/2366_2.png) [@Mihai\_Cazacu](https://discuss.elastic.co/u/Mihai_Cazacu)\
**Post date:** [June 2, 2017, 9:08am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/2 "2017-06-02T09:08:29Z")

</div>

I can do something like this:

> System.setProperty("es.set.netty.runtime.available.processors", "false");

but, for sure, is not the right fix.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [June 2, 2017, 9:18am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/3 "2017-06-02T09:18:48Z")

</div>

May be open an issue in that case? @jasontedor WDYT?

---

<div class="post-metadata">

**Author:** ![jasontedor](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jasontedor/32/66992_2.png) [@jasontedor](https://discuss.elastic.co/u/jasontedor)\
**Post date:** [June 2, 2017, 10:24am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/4 "2017-06-02T10:24:31Z")

</div>

Can you explain why it's already configured? Are you using Netty within your application outside of the use within the transport client?

---

<div class="post-metadata">

**Author:** ![Mihai\_Cazacu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mihai_cazacu/32/2366_2.png) [@Mihai\_Cazacu](https://discuss.elastic.co/u/Mihai_Cazacu)\
**Post date:** [June 2, 2017, 10:42am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/5 "2017-06-02T10:42:56Z")

</div>

Yes, I'm using Vert.x (a framework based on Netty).

---

<div class="post-metadata">

**Author:** ![jasontedor](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jasontedor/32/66992_2.png) [@jasontedor](https://discuss.elastic.co/u/jasontedor)\
**Post date:** [June 2, 2017, 10:57am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/6 "2017-06-02T10:57:16Z")

</div>

> [@Mihai\_Cazacu](#):
>
> es.set.netty.runtime.available.processors

Then you should indeed set `es.set.netty.runtime.available.processors`.

---

<div class="post-metadata">

**Author:** ![Mihai\_Cazacu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mihai_cazacu/32/2366_2.png) [@Mihai\_Cazacu](https://discuss.elastic.co/u/Mihai_Cazacu)\
**Post date:** [June 2, 2017, 11:16am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/7 "2017-06-02T11:16:32Z")

</div>

OK. Thank you!

---

<div class="post-metadata">

**Author:** ![Mihai\_Cazacu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mihai_cazacu/32/2366_2.png) [@Mihai\_Cazacu](https://discuss.elastic.co/u/Mihai_Cazacu)\
**Post date:** [June 2, 2017, 11:47am UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/8 "2017-06-02T11:47:20Z")

</div>

What I wanted to emphasize was that the error has not been present on previous versions (\<= _5.4.0_).

---

<div class="post-metadata">

**Author:** ![jasontedor](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jasontedor/32/66992_2.png) [@jasontedor](https://discuss.elastic.co/u/jasontedor)\
**Post date:** [June 2, 2017, 12:06pm UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/9 "2017-06-02T12:06:25Z")

</div>

I understand that, this feature wasn't available in versions of Netty that Elasticsearch \<= 5.4.0 depended on.

---

<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:** [June 30, 2017, 12:06pm UTC](https://discuss.elastic.co/t/elasticsearch-5-4-1-availableprocessors-is-already-set/88036/10 "2017-06-30T12:06:56Z")

</div>

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