# Elasticsearch Java transport client: exception caught on transport layer and reports no node available

**URL:** <https://discuss.elastic.co/t/elasticsearch-java-transport-client-exception-caught-on-transport-layer-and-reports-no-node-available/158905>\
**Category:** Elasticsearch\
**Created:** [November 30, 2018, 1:00pm UTC](https://discuss.elastic.co/t/elasticsearch-java-transport-client-exception-caught-on-transport-layer-and-reports-no-node-available/158905 "2018-11-30T13:00:56Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![yankeguo](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/yankeguo/32/38289_2.png) [@yankeguo](https://discuss.elastic.co/u/yankeguo)\
**Post date:** [November 30, 2018, 1:00pm UTC](https://discuss.elastic.co/t/elasticsearch-java-transport-client-exception-caught-on-transport-layer-and-reports-no-node-available/158905/1 "2018-11-30T13:00:56Z")

</div>

Seems like something went wrong during ping and the client thinks the node is not available.

I've tried sniff on/off, latest version of elasticsearch client and various versions of Netty library.

java code:

```auto
// create the client
        TransportClient client = new PreBuiltTransportClient(
                Settings.builder()
                        .put("client.transport.sniff", true)
                        .put("client.transport.ignore_cluster_name", true)
                        .build()
        );
        for (String host : this.options.getHosts()) {
            InetSocketAddress address = InetSocketAddresses.from(host, 9300);
            if (address != null) {
                client = client.addTransportAddress(new TransportAddress(address));
            }
        }

```

Java version:

```auto
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

```

ElasticSearch client version:

```auto
org.elasticsearch.client:transport-6.3.2

```

Log:

```auto
20:44:19.147 [elasticsearch[_client_][generic][T#1]] WARN org.elasticsearch.transport.netty4.Netty4Transport - exception caught on transport layer [NettyTcpChannel{localAddress=0.0.0.0/0.0.0.0:58688, remoteAddress=null}], closing connection
java.lang.IllegalArgumentException: maxNumComponents: 1 (expected: >= 2)
        at io.netty.buffer.CompositeByteBuf.<init>(CompositeByteBuf.java:68)
        at io.netty.buffer.CompositeByteBuf.<init>(CompositeByteBuf.java:78)
        at io.netty.buffer.Unpooled.compositeBuffer(Unpooled.java:351)
        at org.elasticsearch.transport.netty4.Netty4Utils.toByteBuf(Netty4Utils.java:117)
        at org.elasticsearch.transport.netty4.NettyTcpChannel.sendMessage(NettyTcpChannel.java:98)
        at org.elasticsearch.transport.TcpTransport.internalSendMessage(TcpTransport.java:1138)
        at org.elasticsearch.transport.TcpTransport.access$800(TcpTransport.java:123)
        at org.elasticsearch.transport.TcpTransport$ScheduledPing.doRunInLifecycle(TcpTransport.java:363)
        at org.elasticsearch.common.util.concurrent.AbstractLifecycleRunnable.doRun(AbstractLifecycleRunnable.java:67)
        at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:725)
        at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

```

---

<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:** [December 28, 2018, 1:07pm UTC](https://discuss.elastic.co/t/elasticsearch-java-transport-client-exception-caught-on-transport-layer-and-reports-no-node-available/158905/2 "2018-12-28T13:07:38Z")

</div>

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