# No node available Exception

**URL:** <https://discuss.elastic.co/t/no-node-available-exception/7381>\
**Category:** Elasticsearch\
**Created:** [April 18, 2012, 2:17pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381 "2012-04-18T14:17:19Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Eugene\_Strokin](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/eugene_strokin/32/1238_2.png) [@Eugene\_Strokin](https://discuss.elastic.co/u/Eugene_Strokin)\
**Post date:** [April 18, 2012, 2:17pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/1 "2012-04-18T14:17:19Z")

</div>

After several months of work with no problem (without even restart), my  
application start to throw this exception once in a while:

Exception in thread "main"  
org.elasticsearch.client.transport.NoNodeAvailableException: No node  
available

at  
org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
TransportClientNodesService.java:214)

at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
TransportActionNodeProxy.java:77)

at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
TransportService.java:310)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:680)

And it continues to work with no problem.

I couldn't find any clues why it could be happening.

Does anybody had this problem? Or could someone give some ideas how to  
investigate this?

Thanks in advance

Eugene S.

---

<div class="post-metadata">

**Author:** ![kimchy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kimchy/32/44952_2.png) [@kimchy](https://discuss.elastic.co/u/kimchy)\
**Post date:** [April 19, 2012, 2:52pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/2 "2012-04-19T14:52:38Z")

</div>

This means that you started to get disconnections between the client  
(transport) and the server. It will try and reconnect automatically, and  
possibly manages to do it. For more information, you can turn on logging on  
org.elasticsearch.client.transport.

On Wed, Apr 18, 2012 at 5:17 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info) wrote:

> After several months of work with no problem (without even restart), my  
> application start to throw this exception once in a while:
> 
> Exception in thread "main"  
> org.elasticsearch.client.transport.NoNodeAvailableException: No node  
> available
> 
> at  
> org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
> TransportClientNodesService.java:214)
> 
> at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
> TransportActionNodeProxy.java:77)
> 
> at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
> TransportService.java:310)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> ThreadPoolExecutor.java:886)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> ThreadPoolExecutor.java:908)
> 
> at java.lang.Thread.run(Thread.java:680)
> 
> And it continues to work with no problem.
> 
> I couldn't find any clues why it could be happening.
> 
> Does anybody had this problem? Or could someone give some ideas how to  
> investigate this?
> 
> Thanks in advance
> 
> Eugene S.

---

<div class="post-metadata">

**Author:** ![Eugene\_Strokin](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/eugene_strokin/32/1238_2.png) [@Eugene\_Strokin](https://discuss.elastic.co/u/Eugene_Strokin)\
**Post date:** [April 19, 2012, 2:58pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/3 "2012-04-19T14:58:10Z")

</div>

Thank you for the reply. That was my initial thought as well. But the thing  
is, that the server which connects to ES and Elasticsearch are on the same  
physical box. So, there is any network connection between them which could  
be lost (I should mentioned it right off).  
Does it change anything?  
Anyway, I'll try to turn on logging on org.elasticsearch.client.transport  
and see what it says.  
Thanks again.

On Thursday, April 19, 2012 10:52:38 AM UTC-4, kimchy wrote:

> This means that you started to get disconnections between the client  
> (transport) and the server. It will try and reconnect automatically, and  
> possibly manages to do it. For more information, you can turn on logging on  
> org.elasticsearch.client.transport.
> 
> On Wed, Apr 18, 2012 at 5:17 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:
> 
> > After several months of work with no problem (without even restart), my  
> > application start to throw this exception once in a while:
> > 
> > Exception in thread "main"  
> > org.elasticsearch.client.transport.NoNodeAvailableException: No node  
> > available
> > 
> > at  
> > org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
> > TransportClientNodesService.java:214)
> > 
> > at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
> > TransportActionNodeProxy.java:77)
> > 
> > at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
> > TransportService.java:310)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> > ThreadPoolExecutor.java:886)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> > ThreadPoolExecutor.java:908)
> > 
> > at java.lang.Thread.run(Thread.java:680)
> > 
> > And it continues to work with no problem.
> > 
> > I couldn't find any clues why it could be happening.
> > 
> > Does anybody had this problem? Or could someone give some ideas how to  
> > investigate this?
> > 
> > Thanks in advance
> > 
> > Eugene S.

---

<div class="post-metadata">

**Author:** ![kimchy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kimchy/32/44952_2.png) [@kimchy](https://discuss.elastic.co/u/kimchy)\
**Post date:** [April 21, 2012, 11:21am UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/4 "2012-04-21T11:21:32Z")

</div>

If they are on the same box, it just means that they use the loopback  
interface, but its still network/sockets/... .

On Thu, Apr 19, 2012 at 5:58 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info) wrote:

> Thank you for the reply. That was my initial thought as well. But the  
> thing is, that the server which connects to ES and Elasticsearch are on the  
> same physical box. So, there is any network connection between them which  
> could be lost (I should mentioned it right off).  
> Does it change anything?  
> Anyway, I'll try to turn on logging on org.elasticsearch.client.\*\*transport  
> and see what it says.  
> Thanks again.
> 
> On Thursday, April 19, 2012 10:52:38 AM UTC-4, kimchy wrote:
> 
> > This means that you started to get disconnections between the client  
> > (transport) and the server. It will try and reconnect automatically, and  
> > possibly manages to do it. For more information, you can turn on logging on  
> > org.elasticsearch.client.\*\*transport.
> > 
> > On Wed, Apr 18, 2012 at 5:17 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:
> > 
> > > After several months of work with no problem (without even restart), my  
> > > application start to throw this exception once in a while:
> > > 
> > > Exception in thread "main" org.elasticsearch.client. **transport.**  
> > > NoNodeAvailableException: No node available
> > > 
> > > at org.elasticsearch.client.**transport.TransportClientNodesService$  
> > > RetryListener.onFailure(Transp**ortClientNodesService.java:214\*\*)
> > > 
> > > at org.elasticsearch.action. **TransportActionNodeProxy$1.**  
> > > handleException(TransportActio\*\*nNodeProxy.java:77)
> > > 
> > > at org.elasticsearch.transport.\*\*TransportService$Adapter$2$1.\*\*run(  
> > > TransportService.java:310)
> > > 
> > > at java.util.concurrent.\*\*ThreadPoolExecutor$Worker.\*\*runTask(  
> > > ThreadPoolExecutor.\*\*java:886)
> > > 
> > > at java.util.concurrent.**ThreadPoolExecutor$Worker.run(**  
> > > ThreadPoolExecutor.java:908)
> > > 
> > > at java.lang.Thread.run(Thread.\*\*java:680)
> > > 
> > > And it continues to work with no problem.
> > > 
> > > I couldn't find any clues why it could be happening.
> > > 
> > > Does anybody had this problem? Or could someone give some ideas how to  
> > > investigate this?
> > > 
> > > Thanks in advance
> > > 
> > > Eugene S.

---

<div class="post-metadata">

**Author:** ![Eugene\_Strokin](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/eugene_strokin/32/1238_2.png) [@Eugene\_Strokin](https://discuss.elastic.co/u/Eugene_Strokin)\
**Post date:** [April 22, 2012, 9:15pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/5 "2012-04-22T21:15:34Z")

</div>

Ok,.. I've turned on DEBUG log level, and now I see this:

DEBUG threadpool - [Boneyard] creating thread\_pool [cached], type [cached],  
keep\_alive [30s]

DEBUG threadpool - [Boneyard] creating thread\_pool [index], type [cached],  
keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [bulk], type [cached],  
keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [search], type [cached],  
keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [percolate], type  
[cached], keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [management], type  
[scaling], min [1], size [5], keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [flush], type [scaling],  
min [1], size [10], keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [merge], type [scaling],  
min [1], size [20], keep\_alive [5m]

DEBUG threadpool - [Boneyard] creating thread\_pool [refresh], type  
[cached], keep\_alive [1m]

DEBUG threadpool - [Boneyard] creating thread\_pool [snapshot], type  
[scaling], min [1], size [5], keep\_alive [5m]

DEBUG netty - [Boneyard] using worker\_count[8], port[9300-9400],  
bind\_host[null], publish\_host[null], compress[false], connect\_timeout[30s],  
connections\_per\_node[2/4/1]

DEBUG transport - [Boneyard] node\_sampler\_interval[5s]

DEBUG NioProviderMetadata - Using the autodetected NIO constraint level: 0

DEBUG netty - [Boneyard] Connected to node [[#transport#-1][inet[{SERVER  
URL}/{SERVER IP}:9300]]]

All cyber users: 998

INFO transport - [Boneyard] failed to get node info for [#transport#-1][{SERVER  
URL}/{SERVER IP}:9300]], disconnecting...

org.elasticsearch.transport.ReceiveTimeoutTransportException: [inet[{SERVER  
URL}/{SERVER IP}:9300]][cluster/nodes/info] request\_id [104] timed out  
after [5002ms]

at org.elasticsearch.transport.TransportService$TimeoutHandler.run(  
TransportService.java:347)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:680)

DEBUG netty - [Boneyard] Disconnected from [[#transport#-1][inet[{SERVER  
URL}/{SERVER IP}:9300]]]

Exception in thread "main"  
org.elasticsearch.client.transport.NoNodeAvailableException: No node  
available

at  
org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
TransportClientNodesService.java:214)

at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
TransportActionNodeProxy.java:77)

at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
TransportService.java:310)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:680)

Before I've got this exception I was able to run few searches and several  
update.

Looks like this is just a timeout. But I don't see any problem with network  
connection.

I thought that the server is very busy and couldn't return the result in 5  
seconds. But I've checked other applications which use the same ES, and it  
looks like they are in normal operation, and return results relatively  
quickly. Even this application sometimes works just fine, but some times  
gives this exception.

Here is a little of stats from ES:

When I've got the exception I had:

Search requests per second - 200

Search time per second - 2,000

Get requests per second - 10

Get time per second - 100

I could debug more, but I need some direction, what should I do next.

Please help,

Thank you,

Eugene S.

On Saturday, April 21, 2012 7:21:32 AM UTC-4, kimchy wrote:

> If they are on the same box, it just means that they use the loopback  
> interface, but its still network/sockets/... .
> 
> On Thu, Apr 19, 2012 at 5:58 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:
> 
> > Thank you for the reply. That was my initial thought as well. But the  
> > thing is, that the server which connects to ES and Elasticsearch are on the  
> > same physical box. So, there is any network connection between them which  
> > could be lost (I should mentioned it right off).  
> > Does it change anything?  
> > Anyway, I'll try to turn on logging on org.elasticsearch.client.\*\*transport  
> > and see what it says.  
> > Thanks again.
> > 
> > On Thursday, April 19, 2012 10:52:38 AM UTC-4, kimchy wrote:
> > 
> > > This means that you started to get disconnections between the client  
> > > (transport) and the server. It will try and reconnect automatically, and  
> > > possibly manages to do it. For more information, you can turn on logging on  
> > > org.elasticsearch.client.\*\*transport.
> > > 
> > > On Wed, Apr 18, 2012 at 5:17 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:
> > > 
> > > > After several months of work with no problem (without even restart), my  
> > > > application start to throw this exception once in a while:
> > > > 
> > > > Exception in thread "main" org.elasticsearch.client. **transport.**  
> > > > NoNodeAvailableException: No node available
> > > > 
> > > > at org.elasticsearch.client._transport.TransportClientNodesService$  
> > > > \*RetryListener.onFailure(TransportClientNodesService.java:214_\*)
> > > > 
> > > > at org.elasticsearch.action. **TransportActionNodeProxy$1.**  
> > > > handleException(TransportActio\*\*nNodeProxy.java:77)
> > > > 
> > > > at org.elasticsearch.transport.\*\*TransportService$Adapter$2$1.\*\*run(  
> > > > TransportService.java:310)
> > > > 
> > > > at java.util.concurrent.\*\*ThreadPoolExecutor$Worker.\*\*runTask(  
> > > > ThreadPoolExecutor.\*\*java:886)
> > > > 
> > > > at java.util.concurrent.**ThreadPoolExecutor$Worker.run(**  
> > > > ThreadPoolExecutor.java:908)
> > > > 
> > > > at java.lang.Thread.run(Thread.\*\*java:680)
> > > > 
> > > > And it continues to work with no problem.
> > > > 
> > > > I couldn't find any clues why it could be happening.
> > > > 
> > > > Does anybody had this problem? Or could someone give some ideas how to  
> > > > investigate this?
> > > > 
> > > > Thanks in advance
> > > > 
> > > > Eugene S.

---

<div class="post-metadata">

**Author:** ![kimchy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kimchy/32/44952_2.png) [@kimchy](https://discuss.elastic.co/u/kimchy)\
**Post date:** [April 25, 2012, 3:42pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/6 "2012-04-25T15:42:26Z")

</div>

Is the timeout failure you see happens right after it started, or later on  
(there is no timestamp for log messages...)? Can you try and increase the  
timeout and see how it goes? Set client.transport.ping\_timeout in the  
settings you pass to the TransportClient to 10s for example.

On Mon, Apr 23, 2012 at 12:15 AM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:

> Ok,.. I've turned on DEBUG log level, and now I see this:
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [cached], type  
> [cached], keep\_alive [30s]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [index], type [cached],  
> keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [bulk], type [cached],  
> keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [search], type  
> [cached], keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [percolate], type  
> [cached], keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [management], type  
> [scaling], min [1], size [5], keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [flush], type  
> [scaling], min [1], size [10], keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [merge], type  
> [scaling], min [1], size [20], keep\_alive [5m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [refresh], type  
> [cached], keep\_alive [1m]
> 
> DEBUG threadpool - [Boneyard] creating thread\_pool [snapshot], type  
> [scaling], min [1], size [5], keep\_alive [5m]
> 
> DEBUG netty - [Boneyard] using worker\_count[8], port[9300-9400],  
> bind\_host[null], publish\_host[null], compress[false], connect\_timeout[30s],  
> connections\_per\_node[2/4/1]
> 
> DEBUG transport - [Boneyard] node\_sampler\_interval[5s]
> 
> DEBUG NioProviderMetadata - Using the autodetected NIO constraint level: 0
> 
> DEBUG netty - [Boneyard] Connected to node [[#transport#-1][inet[{SERVER  
> URL}/{SERVER IP}:9300]]]
> 
> All cyber users: 998
> 
> INFO transport - [Boneyard] failed to get node info for [#transport#-1][{SERVER  
> URL}/{SERVER IP}:9300]], disconnecting...
> 
> org.elasticsearch.transport.ReceiveTimeoutTransportException: [inet[{SERVER  
> URL}/{SERVER IP}:9300]][cluster/nodes/info] request\_id [104] timed out  
> after [5002ms]
> 
> at org.elasticsearch.transport.TransportService$TimeoutHandler.run(  
> TransportService.java:347)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> ThreadPoolExecutor.java:886)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> ThreadPoolExecutor.java:908)
> 
> at java.lang.Thread.run(Thread.java:680)
> 
> DEBUG netty - [Boneyard] Disconnected from [[#transport#-1][inet[{SERVER  
> URL}/{SERVER IP}:9300]]]
> 
> Exception in thread "main"  
> org.elasticsearch.client.transport.NoNodeAvailableException: No node  
> available
> 
> at  
> org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
> TransportClientNodesService.java:214)
> 
> at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
> TransportActionNodeProxy.java:77)
> 
> at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
> TransportService.java:310)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> ThreadPoolExecutor.java:886)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> ThreadPoolExecutor.java:908)
> 
> at java.lang.Thread.run(Thread.java:680)
> 
> Before I've got this exception I was able to run few searches and several  
> update.
> 
> Looks like this is just a timeout. But I don't see any problem with  
> network connection.
> 
> I thought that the server is very busy and couldn't return the result in 5  
> seconds. But I've checked other applications which use the same ES, and it  
> looks like they are in normal operation, and return results relatively  
> quickly. Even this application sometimes works just fine, but some times  
> gives this exception.
> 
> Here is a little of stats from ES:
> 
> When I've got the exception I had:
> 
> Search requests per second - 200
> 
> Search time per second - 2,000
> 
> Get requests per second - 10
> 
> Get time per second - 100
> 
> I could debug more, but I need some direction, what should I do next.
> 
> Please help,
> 
> Thank you,
> 
> Eugene S.
> 
> On Saturday, April 21, 2012 7:21:32 AM UTC-4, kimchy wrote:
> 
> > If they are on the same box, it just means that they use the loopback  
> > interface, but its still network/sockets/... .
> > 
> > On Thu, Apr 19, 2012 at 5:58 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:
> > 
> > > Thank you for the reply. That was my initial thought as well. But the  
> > > thing is, that the server which connects to ES and Elasticsearch are on the  
> > > same physical box. So, there is any network connection between them which  
> > > could be lost (I should mentioned it right off).  
> > > Does it change anything?  
> > > Anyway, I'll try to turn on logging on org.elasticsearch.client. **tr** ansport  
> > > and see what it says.  
> > > Thanks again.
> > > 
> > > On Thursday, April 19, 2012 10:52:38 AM UTC-4, kimchy wrote:
> > > 
> > > > This means that you started to get disconnections between the client  
> > > > (transport) and the server. It will try and reconnect automatically, and  
> > > > possibly manages to do it. For more information, you can turn on logging on  
> > > > org.elasticsearch.client. **trans** port.
> > > > 
> > > > On Wed, Apr 18, 2012 at 5:17 PM, Eugene Strokin [eugene@strokin.info](mailto:eugene@strokin.info)wrote:
> > > > 
> > > > > After several months of work with no problem (without even restart),  
> > > > > my application start to throw this exception once in a while:
> > > > > 
> > > > > Exception in thread "main" org.elasticsearch.client. **trans** port.\*\*  
> > > > > NoNodeAvailableException: No node available
> > > > > 
> > > > > at org.elasticsearch.client. **trans** port._TransportClientNodesServi  
> > > > > \*ce$**RetryListener.onFailure(Tra**nsp__ortClientNodesService.java:_\*  
> > > > > 214\*\*)
> > > > > 
> > > > > at org.elasticsearch.action. **Trans** portActionNodeProxy$1._handleEx  
> > > > > \*ception(TransportActio__nNodePro_\*xy.java:77)
> > > > > 
> > > > > at org.elasticsearch.transport. **Tr** ansportService$Adapter$2$1.\*_run_  
> > > > > \*(TransportService.java:310)
> > > > > 
> > > > > at java.util.concurrent. **ThreadPoo** lExecutor$Worker.\*_runTask(Threa_  
> > > > > \*dPoolExecutor.\*\*java:886)
> > > > > 
> > > > > at java.util.concurrent. **ThreadPoo** lExecutor$Worker.run(\*_ThreadPoo_  
> > > > > \*lExecutor.java:908)
> > > > > 
> > > > > at java.lang.Thread.run(Thread. **ja** va:680)
> > > > > 
> > > > > And it continues to work with no problem.
> > > > > 
> > > > > I couldn't find any clues why it could be happening.
> > > > > 
> > > > > Does anybody had this problem? Or could someone give some ideas how to  
> > > > > investigate this?
> > > > > 
> > > > > Thanks in advance
> > > > > 
> > > > > Eugene S.

---

<div class="post-metadata">

**Author:** ![Ahmet\_Akyol](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ahmet_akyol/32/2389_2.png) [@Ahmet\_Akyol](https://discuss.elastic.co/u/Ahmet_Akyol)\
**Post date:** [September 14, 2012, 7:06pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/7 "2012-09-14T19:06:52Z")

</div>

Setting client.transport.ping\_timeout in the settings you pass to the  
TransportClient to 10s, doesn't work for me.

I can reach with "elasticsearch-head" but can't with java code.

TransportClient code and "elasticsearch-head" both are on windows, ES node  
is on VMWare Player as a virtual machine. I use ES 0.19.8 .

Any idea?

P.s. : I can't believe that there is no proper java client using rest API  
☹

On Wednesday, April 25, 2012 6:42:26 PM UTC+3, kimchy wrote:

> Is the timeout failure you see happens right after it started, or later on  
> (there is no timestamp for log messages...)? Can you try and increase the  
> timeout and see how it goes? Set client.transport.ping\_timeout in the  
> settings you pass to the TransportClient to 10s for example.
> 
> On Mon, Apr 23, 2012 at 12:15 AM, Eugene Strokin \<eug...@strokin.info\<javascript:\>
> 
> > wrote:
> 
> > Ok,.. I've turned on DEBUG log level, and now I see this:
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [cached], type  
> > [cached], keep\_alive [30s]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [index], type  
> > [cached], keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [bulk], type [cached],  
> > keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [search], type  
> > [cached], keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [percolate], type  
> > [cached], keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [management], type  
> > [scaling], min [1], size [5], keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [flush], type  
> > [scaling], min [1], size [10], keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [merge], type  
> > [scaling], min [1], size [20], keep\_alive [5m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [refresh], type  
> > [cached], keep\_alive [1m]
> > 
> > DEBUG threadpool - [Boneyard] creating thread\_pool [snapshot], type  
> > [scaling], min [1], size [5], keep\_alive [5m]
> > 
> > DEBUG netty - [Boneyard] using worker\_count[8], port[9300-9400],  
> > bind\_host[null], publish\_host[null], compress[false], connect\_timeout[30s],  
> > connections\_per\_node[2/4/1]
> > 
> > DEBUG transport - [Boneyard] node\_sampler\_interval[5s]
> > 
> > DEBUG NioProviderMetadata - Using the autodetected NIO constraint level: 0
> > 
> > DEBUG netty - [Boneyard] Connected to node [[#transport#-1][inet[{SERVER  
> > URL}/{SERVER IP}:9300]]]
> > 
> > All cyber users: 998
> > 
> > INFO transport - [Boneyard] failed to get node info for [#transport#-1][{SERVER  
> > URL}/{SERVER IP}:9300]], disconnecting...
> > 
> > org.elasticsearch.transport.ReceiveTimeoutTransportException: [inet[{SERVER  
> > URL}/{SERVER IP}:9300]][cluster/nodes/info] request\_id [104] timed out  
> > after [5002ms]
> > 
> > at org.elasticsearch.transport.TransportService$TimeoutHandler.run(  
> > TransportService.java:347)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> > ThreadPoolExecutor.java:886)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> > ThreadPoolExecutor.java:908)
> > 
> > at java.lang.Thread.run(Thread.java:680)
> > 
> > DEBUG netty - [Boneyard] Disconnected from [[#transport#-1][inet[{SERVER  
> > URL}/{SERVER IP}:9300]]]
> > 
> > Exception in thread "main"  
> > org.elasticsearch.client.transport.NoNodeAvailableException: No node  
> > available
> > 
> > at  
> > org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
> > TransportClientNodesService.java:214)
> > 
> > at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
> > TransportActionNodeProxy.java:77)
> > 
> > at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
> > TransportService.java:310)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> > ThreadPoolExecutor.java:886)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> > ThreadPoolExecutor.java:908)
> > 
> > at java.lang.Thread.run(Thread.java:680)
> > 
> > Before I've got this exception I was able to run few searches and several  
> > update.
> > 
> > Looks like this is just a timeout. But I don't see any problem with  
> > network connection.
> > 
> > I thought that the server is very busy and couldn't return the result in  
> > 5 seconds. But I've checked other applications which use the same ES, and  
> > it looks like they are in normal operation, and return results relatively  
> > quickly. Even this application sometimes works just fine, but some times  
> > gives this exception.
> > 
> > Here is a little of stats from ES:
> > 
> > When I've got the exception I had:
> > 
> > Search requests per second - 200
> > 
> > Search time per second - 2,000
> > 
> > Get requests per second - 10
> > 
> > Get time per second - 100
> > 
> > I could debug more, but I need some direction, what should I do next.
> > 
> > Please help,
> > 
> > Thank you,
> > 
> > Eugene S.
> > 
> > On Saturday, April 21, 2012 7:21:32 AM UTC-4, kimchy wrote:
> > 
> > > If they are on the same box, it just means that they use the loopback  
> > > interface, but its still network/sockets/... .
> > > 
> > > On Thu, Apr 19, 2012 at 5:58 PM, Eugene Strokin \<eug...@strokin.info\<javascript:\>
> > > 
> > > > wrote:
> > > 
> > > > Thank you for the reply. That was my initial thought as well. But the  
> > > > thing is, that the server which connects to ES and Elasticsearch are on the  
> > > > same physical box. So, there is any network connection between them which  
> > > > could be lost (I should mentioned it right off).  
> > > > Does it change anything?  
> > > > Anyway, I'll try to turn on logging on org.elasticsearch.client. **tr** ansport  
> > > > and see what it says.  
> > > > Thanks again.
> > > > 
> > > > On Thursday, April 19, 2012 10:52:38 AM UTC-4, kimchy wrote:
> > > > 
> > > > > This means that you started to get disconnections between the client  
> > > > > (transport) and the server. It will try and reconnect automatically, and  
> > > > > possibly manages to do it. For more information, you can turn on logging on  
> > > > > org.elasticsearch.client. **trans** port.
> > > > > 
> > > > > On Wed, Apr 18, 2012 at 5:17 PM, Eugene Strokin \<eug...@strokin.info\<javascript:\>
> > > > > 
> > > > > > wrote:
> > > > > 
> > > > > > After several months of work with no problem (without even restart),  
> > > > > > my application start to throw this exception once in a while:
> > > > > > 
> > > > > > Exception in thread "main" org.elasticsearch.client. **trans** port.\*\*  
> > > > > > NoNodeAvailableException: No node available
> > > > > > 
> > > > > > at org.elasticsearch.client. **trans** port._TransportClientNodesServi  
> > > > > > **ce$RetryListener.onFailure(Transp**ortClientNodesService.java:  
> > > > > > 214_)
> > > > > > 
> > > > > > at org.elasticsearch.action. **Trans** portActionNodeProxy$1.**handleEx  
> > > > > > ception(TransportActionNodePro**xy.java:77)
> > > > > > 
> > > > > > at org.elasticsearch.transport. **Tr** ansportService$Adapter$2$1.\*\*run  
> > > > > > \*\*(TransportService.java:310)
> > > > > > 
> > > > > > at java.util.concurrent. **ThreadPoo** lExecutor$Worker.\*\*runTask(Threa  
> > > > > > \*\*dPoolExecutor.\*\*java:886)
> > > > > > 
> > > > > > at java.util.concurrent. **ThreadPoo** lExecutor$Worker.run(\*\*ThreadPoo  
> > > > > > \*\*lExecutor.java:908)
> > > > > > 
> > > > > > at java.lang.Thread.run(Thread. **ja** va:680)
> > > > > > 
> > > > > > And it continues to work with no problem.
> > > > > > 
> > > > > > I couldn't find any clues why it could be happening.
> > > > > > 
> > > > > > Does anybody had this problem? Or could someone give some ideas how  
> > > > > > to investigate this?
> > > > > > 
> > > > > > Thanks in advance
> > > > > > 
> > > > > > Eugene S.

--

---

<div class="post-metadata">

**Author:** ![mattazoid](https://avatars.discourse-cdn.com/v4/letter/m/3be4f8/32.png) [@mattazoid](https://discuss.elastic.co/u/mattazoid)\
**Post date:** [November 6, 2013, 3:54pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/8 "2013-11-06T15:54:39Z")

</div>

I get the same NoNodeAvailableException occasionally on our server (version  
0.90.5). This one is a single node cluster. We use Java API to both index  
and search. ES logs do not show gc slowdowns during the affected time  
periods. We do have client.transport.ping\_timeout set to 10s (from  
kimchy's recommendation in this thread). We are still looking into the  
issue. NewRelic server monitor shows very low I/O usage (using SSD's) and  
CPU never spiked above 50% (that too for a short time). We use bulk  
indexing for optimal performance on indexing. We do make use of MLT queries  
heavily on this server.

Will post back if we find some solution OR if the original posted found a  
solution please do post here.

On Wednesday, April 18, 2012 10:17:19 AM UTC-4, Eugene Strokin wrote:

> After several months of work with no problem (without even restart), my  
> application start to throw this exception once in a while:
> 
> Exception in thread "main"  
> org.elasticsearch.client.transport.NoNodeAvailableException: No node  
> available
> 
> at  
> org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
> TransportClientNodesService.java:214)
> 
> at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
> TransportActionNodeProxy.java:77)
> 
> at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
> TransportService.java:310)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> ThreadPoolExecutor.java:886)
> 
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> ThreadPoolExecutor.java:908)
> 
> at java.lang.Thread.run(Thread.java:680)
> 
> And it continues to work with no problem.
> 
> I couldn't find any clues why it could be happening.
> 
> Does anybody had this problem? Or could someone give some ideas how to  
> investigate this?
> 
> Thanks in advance
> 
> Eugene S.

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![Justin\_Uang](https://avatars.discourse-cdn.com/v4/letter/j/ed655f/32.png) [@Justin\_Uang](https://discuss.elastic.co/u/Justin_Uang)\
**Post date:** [December 4, 2013, 6:31pm UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/9 "2013-12-04T18:31:26Z")

</div>

I get the same problem too. Our configuration has us using the  
TransportClient, and we have a single node cluster using the loopback  
interface. What's puzzling is that it only shows up intermittently.

On Wednesday, November 6, 2013 10:54:39 AM UTC-5, Mathew Thomas wrote:

> I get the same NoNodeAvailableException occasionally on our server  
> (version 0.90.5). This one is a single node cluster. We use Java API to  
> both index and search. ES logs do not show gc slowdowns during the affected  
> time periods. We do have client.transport.ping\_timeout set to 10s (from  
> kimchy's recommendation in this thread). We are still looking into the  
> issue. NewRelic server monitor shows very low I/O usage (using SSD's) and  
> CPU never spiked above 50% (that too for a short time). We use bulk  
> indexing for optimal performance on indexing. We do make use of MLT queries  
> heavily on this server.
> 
> Will post back if we find some solution OR if the original posted found a  
> solution please do post here.
> 
> On Wednesday, April 18, 2012 10:17:19 AM UTC-4, Eugene Strokin wrote:
> 
> > After several months of work with no problem (without even restart), my  
> > application start to throw this exception once in a while:
> > 
> > Exception in thread "main"  
> > org.elasticsearch.client.transport.NoNodeAvailableException: No node  
> > available
> > 
> > at  
> > org.elasticsearch.client.transport.TransportClientNodesService$RetryListener.onFailure(  
> > TransportClientNodesService.java:214)
> > 
> > at org.elasticsearch.action.TransportActionNodeProxy$1.handleException(  
> > TransportActionNodeProxy.java:77)
> > 
> > at org.elasticsearch.transport.TransportService$Adapter$2$1.run(  
> > TransportService.java:310)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(  
> > ThreadPoolExecutor.java:886)
> > 
> > at java.util.concurrent.ThreadPoolExecutor$Worker.run(  
> > ThreadPoolExecutor.java:908)
> > 
> > at java.lang.Thread.run(Thread.java:680)
> > 
> > And it continues to work with no problem.
> > 
> > I couldn't find any clues why it could be happening.
> > 
> > Does anybody had this problem? Or could someone give some ideas how to  
> > investigate this?
> > 
> > Thanks in advance
> > 
> > Eugene S.

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/7cb1b91f-fc52-48c0-b301-a8285f9b6fc1%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/7cb1b91f-fc52-48c0-b301-a8285f9b6fc1%40googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![Sven\_Jorns](https://avatars.discourse-cdn.com/v4/letter/s/ecd19e/32.png) [@Sven\_Jorns](https://discuss.elastic.co/u/Sven_Jorns)\
**Post date:** [November 4, 2014, 9:12am UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/10 "2014-11-04T09:12:07Z")

</div>

We had the same problem.  
reason: The application server uses a older version of log4j than ES needed.

Am Mittwoch, 4. Dezember 2013 19:31:26 UTC+1 schrieb Justin Uang:

> I get the same problem too. Our configuration has us using the  
> TransportClient, and we have a single node cluster using the loopback  
> interface. What's puzzling is that it only shows up intermittently.
> 
> > >

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/654f1d79-16d1-4cdf-9d06-db8a020affab%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/654f1d79-16d1-4cdf-9d06-db8a020affab%40googlegroups.com).  
For more options, visit [https://groups.google.com/d/optout](https://groups.google.com/d/optout).

---

<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:** [July 6, 2017, 12:52am UTC](https://discuss.elastic.co/t/no-node-available-exception/7381/11 "2017-07-06T00:52:20Z")

</div>


