# Storm 1.0.x - elastic 5.0.x integration issue

**URL:** <https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337>\
**Category:** Elasticsearch\
**Tags:** es-hadoop\
**Created:** [February 24, 2017, 2:43am UTC](https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337 "2017-02-24T02:43:27Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![sreevaddi](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sreevaddi/32/4555_2.png) [@sreevaddi](https://discuss.elastic.co/u/sreevaddi)\
**Post date:** [February 24, 2017, 2:43am UTC](https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337/1 "2017-02-24T02:43:27Z")

</div>

following the documentation at:  
[https://storm.apache.org/releases/1.0.1/storm-elasticsearch.html](https://storm.apache.org/releases/1.0.1/storm-elasticsearch.html)

ran into this issue:  
java.lang.NoClassDefFoundError: org/elasticsearch/common/base/Preconditions  
at org.apache.storm.elasticsearch.common.EsConfig.(EsConfig.java:62) ~[storm-elasticsearch-1.0.2.jar:1.0.2]  
at org.apache.storm.elasticsearch.common.EsConfig.(EsConfig.java:49) ~[storm-elasticsearch-1.0.2.jar:1.0.2]

Caused by: java.lang.ClassNotFoundException: org.elasticsearch.common.base.Preconditions  
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[?:1.8.0\_112]  
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0\_112]  
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[?:1.8.0\_112]  
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0\_112]

261538 [elasticsearch[Ringleader][generic][T#2]] INFO o.e.c.transport - [Ringleader] failed to get node info for [#transport#-1][svaddi][inet[localhost/127.0.0.1:9200]], disconnecting...  
org.elasticsearch.transport.ReceiveTimeoutTransportException: [][inet[localhost/127.0.0.1:9200]][cluster:monitor/nodes/info] request\_id [26] timed out after [5005ms]  
at org.elasticsearch.transport.TransportService$TimeoutHandler.run(TransportService.java:529) ~[elasticsearch-1.6.0.jar:?]  
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0\_112]  
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0\_112]  
at java.lang.Thread.run(Thread.java:745) [?:1.8.0\_112]

elastic logs:  
[2017-02-23T15:47:04,487][WARN][o.e.t.n.Netty4Transport] [Qt9qlNV] exception caught on transport layer [[id: 0x8f15e875, L:/127.0.0.1:9300 - R:/127.0.0.1:52031]], closing connection  
java.lang.IllegalStateException: Received message from unsupported version: [1.0.0] minimal compatible version is: [5.0.0]  
at org.elasticsearch.transport.TcpTransport.messageReceived(TcpTransport.java:1199) ~[elasticsearch-5.0.0.jar:5.0.0]  
at org.elasticsearch.transport.netty4.Netty4MessageChannelHandler.channelRead(Netty4MessageChannelHandler.java:74) ~[transport-netty4-5.0.0.jar:5.0.0]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293) [netty-codec-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:280) [netty-codec-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:396) [netty-codec-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:248) [netty-codec-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:350) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:372) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:358) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:129) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:610) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:513) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:467) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:437) [netty-transport-4.1.5.Final.jar:4.1.5.Final]  
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873) [netty-common-4.1.5.Final.jar:4.1.5.Final]  
at java.lang.Thread.run(Thread.java:745) [?:1.8.0\_121]

---

<div class="post-metadata">

**Author:** ![sreevaddi](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sreevaddi/32/4555_2.png) [@sreevaddi](https://discuss.elastic.co/u/sreevaddi)\
**Post date:** [February 24, 2017, 2:43am UTC](https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337/2 "2017-02-24T02:43:47Z")

</div>

[https://issues.apache.org/jira/browse/STORM-2379](https://issues.apache.org/jira/browse/STORM-2379)

---

<div class="post-metadata">

**Author:** ![james.baiera](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/james.baiera/32/10209_2.png) [@james.baiera](https://discuss.elastic.co/u/james.baiera)\
**Post date:** [March 11, 2017, 7:48pm UTC](https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337/3 "2017-03-11T19:48:31Z")

</div>

Hello @sreevaddi,

We met at Elasticon briefly, but I wanted to repeat our discussion outcome here really quickly for anyone else who may have this problem:

> [@sreevaddi](#):
>
> following the documentation at:[https://storm.apache.org/releases/1.0.1/storm-elasticsearch.html](https://storm.apache.org/releases/1.0.1/storm-elasticsearch.html)

This is a link to the Apache Storm implementation of an Elasticsearch bolt. The stack trace here outlines a missing class in the bolt from the included Elasticsearch library.

> [@sreevaddi](#):
>
> [[STORM-2379] [storm-elasticsearch] switch ES client to Java REST API - ASF JIRA](https://issues.apache.org/jira/browse/STORM-2379)

As you linked (above), the connector from the Storm project depends on an old version of Elasticsearch. If you are using a newer version of Elasticsearch, the Preconditions class is no longer where the Storm connector expects it to be. I'm sorry to say that I can't speak too much to the Apache Storm Elasticsearch Connector, as it is not a part of the ES-Hadoop project.

---

<div class="post-metadata">

**Author:** ![sreevaddi](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sreevaddi/32/4555_2.png) [@sreevaddi](https://discuss.elastic.co/u/sreevaddi)\
**Post date:** [March 16, 2017, 2:46am UTC](https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337/4 "2017-03-16T02:46:24Z")

</div>

It was a pleasure to meet you at Elasticon, James.

You are right, this issue is on the apache storm side.  
More discussions are going on on apache storm distribution list in addition to that jira.

Thank you very much.  
Sree

---

<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:** [April 13, 2017, 2:46am UTC](https://discuss.elastic.co/t/storm-1-0-x-elastic-5-0-x-integration-issue/76337/5 "2017-04-13T02:46:48Z")

</div>

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