Mahesh Maney
Mahesh Maney

Reputation: 91

Upgrade elasticsearch.jar from 1.7.5 to 2.3.5

I have upgraded the client(elasticsearch.jar) from 1.7.5 to 2.3.5 One of the major changes was org.elasticsearch.client.transport.TransportClient. In 1.7.5 version org.elasticsearch.client.transport.TransportClient had public constructor with no arg constructor. In my applicationContext-search.xml, earlier we had "bean id="transportClient" class="org.elasticsearch.client.transport.TransportClient"/> which was replaced to

<bean id="transportClient" class="org.elasticsearch.client.transport.TransportClient" factory-method="builder">
/bean>
<bean id="transportClient1" factory-bean="transportClient" factory-method="build" >
</bean>

Now when i start my service that invokes elastic search i end up in the following error

[01 Sep 2016 15:14:27,390] WARN [] [elasticsearch[Carolyn Trainer][transport_client_worker][T#1]{New I/O worker #1}] [org.elasticsearch.transport.netty.NettyTransport] [Carolyn Trainer] exception caught on transport layer [[id: 0xfaea1184, /127.0.0.1:63786 => localhost/127.0.0.1:9300]], closing connection
java.lang.NullPointerException
at org.elasticsearch.transport.netty.MessageChannelHandler.handleException(MessageChannelHandler.java:207)
at org.elasticsearch.transport.netty.MessageChannelHandler.handlerResponseError(MessageChannelHandler.java:202)
at org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:136)
at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108)
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:337)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)

Elastic search set up is one node in the development environment. Can someone help me whats happening here ?

Regards, Maney

Upvotes: 1

Views: 156

Answers (1)

Mahesh Maney
Mahesh Maney

Reputation: 91

This was my wrong. What i did was, running the client (elasticsearch.jar) on 2.3.5 and the server on 1.3.2 I upgraded the server to match my client, from 1.3.2 to 2.3.5 and things were up and working fine. So, to conclude, make sure the client and server are running on the same version of elasticsearch.....

Regards, Maney

Upvotes: 1

Related Questions