# Upgrade client and server from 0.16.x to 0.17.x

**URL:** <https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125>\
**Category:** Elasticsearch\
**Created:** [August 11, 2011, 1:40pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125 "2011-08-11T13:40:34Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nicolas\_Lalevee](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nicolas_lalevee/32/2892_2.png) [@Nicolas\_Lalevee](https://discuss.elastic.co/u/Nicolas_Lalevee)\
**Post date:** [August 11, 2011, 1:40pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/1 "2011-08-11T13:40:34Z")

</div>

I have a client 0.16.1 (patched with some bug fix), and a server in 0.16.1.  
I am starting to plan to upgrade to 0.17.4. But it seems the "zen" protocol is not backward compatible between the 0.16 and the 0.17. Trying to upgrade on and not the other, I got errors.

Trying the client 0.17 and the server 0.16, I get on the client side:

11.08.2011 15:21:35 WARN [org.elasticsearch.transport.netty:86] [Arsenal] Message not fully read (response) for [0] handler future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@1fb93cf8), error [false], resetting  
11.08.2011 15:21:35 INFO [org.elasticsearch.discovery.zen:78] [Arsenal] failed to send join request to master [[Fury, Jacob "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; org.elasticsearch.transport.TransportSerializationException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; java.io.IOException: Expected handle header, got [111]]  
11.08.2011 15:21:38 INFO [org.elasticsearch.discovery.zen:78] [Arsenal] failed to send join request to master [[Fury, Jacob "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; org.elasticsearch.transport.TransportSerializationException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; java.io.IOException: Expected handle header, got [111]]  
11.08.2011 15:21:38 WARN [org.elasticsearch.transport.netty:86] [Arsenal] Message not fully read (response) for [1] handler future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2eb6dfa8), error [false], resetting  
11.08.2011 15:21:41 WARN [org.elasticsearch.transport.netty:86] [Arsenal] Message not fully read (response) for [2] handler future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2bf06804), error [false], resetting

On the elasticsearch server side:

[2011-08-11 15:21:35,432][INFO][cluster.service] [Fury, Jacob "Jake"] added {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false},}, reason: zen-disco-receive(join from node[[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}])  
[2011-08-11 15:21:38,442][WARN][discovery.zen] [Fury, Jacob "Jake"] received a join request for an existing node [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}]  
[2011-08-11 15:21:41,448][WARN][discovery.zen] [Fury, Jacob "Jake"] received a join request for an existing node [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}]  
[2011-08-11 15:21:43,031][INFO][cluster.service] [Fury, Jacob "Jake"] removed {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false},}, reason: zen-disco-node\_failed([Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}), reason transport disconnected (with verified connect)

With the client 0.16 and the server 0.17, I get this on the client side:

11.08.2011 15:36:53 INFO [org.elasticsearch.discovery.zen:78] [Green Goblin] failed to send join request to master [[Alistaire Stuart][LAcuQv8rTyaxJJ-aDG2v5Q][inet[/10.0.0.238:9300]]], reason [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; org.elasticsearch.transport.TransportSerializationException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; java.io.EOFException]

On the server side:

[2011-08-11 15:36:56,325][e[33mWARN e[0m][discovery.zen] [Alistaire Stuart] received a join request for an existing node [[Green Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true, data=false}]  
[2011-08-11 15:36:57,742][e[32mINFO e[0m][cluster.service] [Alistaire Stuart] removed {[Green Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true, data=false},}, reason: zen-disco-node\_failed([Green Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true, data=false}), reason transport disconnected (with verified connect)

So to do the upgrade, I must have the entire cluster down, my web frontends (clients) and the elasticsearch servers ?

Nicolas

---

<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:** [August 11, 2011, 3:09pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/2 "2011-08-11T15:09:57Z")

</div>

Yes.

2011/8/11 Nicolas Lalevée [nicolas.lalevee@hibnet.org](mailto:nicolas.lalevee@hibnet.org)

> I have a client 0.16.1 (patched with some bug fix), and a server in 0.16.1.  
> I am starting to plan to upgrade to 0.17.4. But it seems the "zen" protocol  
> is not backward compatible between the 0.16 and the 0.17. Trying to upgrade  
> on and not the other, I got errors.
> 
> Trying the client 0.17 and the server 0.16, I get on the client side:
> 
> 11.08.2011 15:21:35 WARN [org.elasticsearch.transport.netty:86] [Arsenal]  
> Message not fully read (response) for [0] handler  
> future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@1fb93cf8),  
> error [false], resetting  
> 11.08.2011 15:21:35 INFO [org.elasticsearch.discovery.zen:78] [Arsenal]  
> failed to send join request to master [[Fury, Jacob  
> "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason  
> [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize  
> response of type  
> [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> org.elasticsearch.transport.TransportSerializationException: Failed to  
> deserialize response of type  
> [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> java.io.IOException: Expected handle header, got [111]]  
> 11.08.2011 15:21:38 INFO [org.elasticsearch.discovery.zen:78] [Arsenal]  
> failed to send join request to master [[Fury, Jacob  
> "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason  
> [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize  
> response of type  
> [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> org.elasticsearch.transport.TransportSerializationException: Failed to  
> deserialize response of type  
> [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> java.io.IOException: Expected handle header, got [111]]  
> 11.08.2011 15:21:38 WARN [org.elasticsearch.transport.netty:86] [Arsenal]  
> Message not fully read (response) for [1] handler  
> future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2eb6dfa8),  
> error [false], resetting  
> 11.08.2011 15:21:41 WARN [org.elasticsearch.transport.netty:86] [Arsenal]  
> Message not fully read (response) for [2] handler  
> future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2bf06804),  
> error [false], resetting
> 
> On the elasticsearch server side:
> 
> [2011-08-11 15:21:35,432][INFO][cluster.service] [Fury, Jacob  
> "Jake"] added {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> data=false},}, reason: zen-disco-receive(join from  
> node[[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> data=false}])  
> [2011-08-11 15:21:38,442][WARN][discovery.zen] [Fury, Jacob  
> "Jake"] received a join request for an existing node  
> [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> data=false}]  
> [2011-08-11 15:21:41,448][WARN][discovery.zen] [Fury, Jacob  
> "Jake"] received a join request for an existing node  
> [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> data=false}]  
> [2011-08-11 15:21:43,031][INFO][cluster.service] [Fury, Jacob  
> "Jake"] removed {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> data=false},}, reason:  
> zen-disco-node\_failed([Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> data=false}), reason transport disconnected (with verified connect)
> 
> With the client 0.16 and the server 0.17, I get this on the client side:
> 
> 11.08.2011 15:36:53 INFO [org.elasticsearch.discovery.zen:78] [Green  
> Goblin] failed to send join request to master [[Alistaire  
> Stuart][LAcuQv8rTyaxJJ-aDG2v5Q][inet[/10.0.0.238:9300]]], reason  
> [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize  
> response of type  
> [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> org.elasticsearch.transport.TransportSerializationException: Failed to  
> deserialize response of type  
> [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> java.io.EOFException]
> 
> On the server side:
> 
> [2011-08-11 15:36:56,325][[33mWARN [0m][discovery.zen]  
> [Alistaire Stuart] received a join request for an existing node [[Green  
> Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true,  
> data=false}]  
> [2011-08-11 15:36:57,742][[32mINFO [0m][cluster.service]  
> [Alistaire Stuart] removed {[Green  
> Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true,  
> data=false},}, reason: zen-disco-node\_failed([Green  
> Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true,  
> data=false}), reason transport disconnected (with verified connect)
> 
> So to do the upgrade, I must have the entire cluster down, my web frontends  
> (clients) and the elasticsearch servers ?
> 
> Nicolas

---

<div class="post-metadata">

**Author:** ![Nicolas\_Lalevee](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nicolas_lalevee/32/2892_2.png) [@Nicolas\_Lalevee](https://discuss.elastic.co/u/Nicolas_Lalevee)\
**Post date:** [August 11, 2011, 3:55pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/3 "2011-08-11T15:55:03Z")

</div>

Then it would be great that in the future some backward compatibility is kept. This is somehow part of the feature "search server always available".

cheers,  
Nicolas

Le 11 août 2011 à 17:09, Shay Banon a écrit :

> Yes.
> 
> 2011/8/11 Nicolas Lalevée [nicolas.lalevee@hibnet.org](mailto:nicolas.lalevee@hibnet.org)  
> I have a client 0.16.1 (patched with some bug fix), and a server in 0.16.1.  
> I am starting to plan to upgrade to 0.17.4. But it seems the "zen" protocol is not backward compatible between the 0.16 and the 0.17. Trying to upgrade on and not the other, I got errors.
> 
> Trying the client 0.17 and the server 0.16, I get on the client side:
> 
> 11.08.2011 15:21:35 WARN [org.elasticsearch.transport.netty:86] [Arsenal] Message not fully read (response) for [0] handler future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@1fb93cf8), error [false], resetting  
> 11.08.2011 15:21:35 INFO [org.elasticsearch.discovery.zen:78] [Arsenal] failed to send join request to master [[Fury, Jacob "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; org.elasticsearch.transport.TransportSerializationException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; java.io.IOException: Expected handle header, got [111]]  
> 11.08.2011 15:21:38 INFO [org.elasticsearch.discovery.zen:78] [Arsenal] failed to send join request to master [[Fury, Jacob "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; org.elasticsearch.transport.TransportSerializationException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; java.io.IOException: Expected handle header, got [111]]  
> 11.08.2011 15:21:38 WARN [org.elasticsearch.transport.netty:86] [Arsenal] Message not fully read (response) for [1] handler future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2eb6dfa8), error [false], resetting  
> 11.08.2011 15:21:41 WARN [org.elasticsearch.transport.netty:86] [Arsenal] Message not fully read (response) for [2] handler future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2bf06804), error [false], resetting
> 
> On the elasticsearch server side:
> 
> [2011-08-11 15:21:35,432][INFO][cluster.service] [Fury, Jacob "Jake"] added {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false},}, reason: zen-disco-receive(join from node[[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}])  
> [2011-08-11 15:21:38,442][WARN][discovery.zen] [Fury, Jacob "Jake"] received a join request for an existing node [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}]  
> [2011-08-11 15:21:41,448][WARN][discovery.zen] [Fury, Jacob "Jake"] received a join request for an existing node [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}]  
> [2011-08-11 15:21:43,031][INFO][cluster.service] [Fury, Jacob "Jake"] removed {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false},}, reason: zen-disco-node\_failed([Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true, data=false}), reason transport disconnected (with verified connect)
> 
> With the client 0.16 and the server 0.17, I get this on the client side:
> 
> 11.08.2011 15:36:53 INFO [org.elasticsearch.discovery.zen:78] [Green Goblin] failed to send join request to master [[Alistaire Stuart][LAcuQv8rTyaxJJ-aDG2v5Q][inet[/10.0.0.238:9300]]], reason [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; org.elasticsearch.transport.TransportSerializationException: Failed to deserialize response of type [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse]; java.io.EOFException]
> 
> On the server side:
> 
> [2011-08-11 15:36:56,325][[33mWARN [0m][discovery.zen] [Alistaire Stuart] received a join request for an existing node [[Green Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true, data=false}]  
> [2011-08-11 15:36:57,742][[32mINFO [0m][cluster.service] [Alistaire Stuart] removed {[Green Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true, data=false},}, reason: zen-disco-node\_failed([Green Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true, data=false}), reason transport disconnected (with verified connect)
> 
> So to do the upgrade, I must have the entire cluster down, my web frontends (clients) and the elasticsearch servers ?
> 
> Nicolas

---

<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:** [August 11, 2011, 4:54pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/4 "2011-08-11T16:54:21Z")

</div>

Yep, it would be nice.

2011/8/11 Nicolas Lalevée [nicolas.lalevee@hibnet.org](mailto:nicolas.lalevee@hibnet.org)

> Then it would be great that in the future some backward compatibility is  
> kept. This is somehow part of the feature "search server always available".
> 
> cheers,  
> Nicolas
> 
> Le 11 août 2011 à 17:09, Shay Banon a écrit :
> 
> > Yes.
> > 
> > 2011/8/11 Nicolas Lalevée [nicolas.lalevee@hibnet.org](mailto:nicolas.lalevee@hibnet.org)  
> > I have a client 0.16.1 (patched with some bug fix), and a server in  
> > 0.16.1.  
> > I am starting to plan to upgrade to 0.17.4. But it seems the "zen"  
> > protocol is not backward compatible between the 0.16 and the 0.17. Trying to  
> > upgrade on and not the other, I got errors.
> > 
> > Trying the client 0.17 and the server 0.16, I get on the client side:
> > 
> > 11.08.2011 15:21:35 WARN [org.elasticsearch.transport.netty:86] [Arsenal]  
> > Message not fully read (response) for [0] handler  
> > future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@1fb93cf8),  
> > error [false], resetting  
> > 11.08.2011 15:21:35 INFO [org.elasticsearch.discovery.zen:78] [Arsenal]  
> > failed to send join request to master [[Fury, Jacob  
> > "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason  
> > [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize  
> > response of type  
> > [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> > org.elasticsearch.transport.TransportSerializationException: Failed to  
> > deserialize response of type  
> > [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> > java.io.IOException: Expected handle header, got [111]]  
> > 11.08.2011 15:21:38 INFO [org.elasticsearch.discovery.zen:78] [Arsenal]  
> > failed to send join request to master [[Fury, Jacob  
> > "Jake"][aaEPP6yGQs6ooO4-1iq5ig][inet[/10.0.0.238:9301]]], reason  
> > [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize  
> > response of type  
> > [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> > org.elasticsearch.transport.TransportSerializationException: Failed to  
> > deserialize response of type  
> > [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> > java.io.IOException: Expected handle header, got [111]]  
> > 11.08.2011 15:21:38 WARN [org.elasticsearch.transport.netty:86] [Arsenal]  
> > Message not fully read (response) for [1] handler  
> > future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2eb6dfa8),  
> > error [false], resetting  
> > 11.08.2011 15:21:41 WARN [org.elasticsearch.transport.netty:86] [Arsenal]  
> > Message not fully read (response) for [2] handler  
> > future(org.elasticsearch.discovery.zen.membership.MembershipAction$1@2bf06804),  
> > error [false], resetting
> > 
> > On the elasticsearch server side:
> > 
> > [2011-08-11 15:21:35,432][INFO][cluster.service] [Fury, Jacob  
> > "Jake"] added {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> > data=false},}, reason: zen-disco-receive(join from  
> > node[[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> > data=false}])  
> > [2011-08-11 15:21:38,442][WARN][discovery.zen] [Fury, Jacob  
> > "Jake"] received a join request for an existing node  
> > [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> > data=false}]  
> > [2011-08-11 15:21:41,448][WARN][discovery.zen] [Fury, Jacob  
> > "Jake"] received a join request for an existing node  
> > [[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> > data=false}]  
> > [2011-08-11 15:21:43,031][INFO][cluster.service] [Fury, Jacob  
> > "Jake"] removed {[Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> > data=false},}, reason:  
> > zen-disco-node\_failed([Arsenal][wdaOfDovR-WZr91kCR9Pmw][inet[/10.0.0.238:9300]]{client=true,  
> > data=false}), reason transport disconnected (with verified connect)
> > 
> > With the client 0.16 and the server 0.17, I get this on the client side:
> > 
> > 11.08.2011 15:36:53 INFO [org.elasticsearch.discovery.zen:78] [Green  
> > Goblin] failed to send join request to master [[Alistaire  
> > Stuart][LAcuQv8rTyaxJJ-aDG2v5Q][inet[/10.0.0.238:9300]]], reason  
> > [org.elasticsearch.transport.RemoteTransportException: Failed to deserialize  
> > response of type  
> > [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> > org.elasticsearch.transport.TransportSerializationException: Failed to  
> > deserialize response of type  
> > [org.elasticsearch.discovery.zen.membership.MembershipAction$JoinResponse];  
> > java.io.EOFException]
> > 
> > On the server side:
> > 
> > [2011-08-11 15:36:56,325][[33mWARN [0m][discovery.zen]  
> > [Alistaire Stuart] received a join request for an existing node [[Green  
> > Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true,  
> > data=false}]  
> > [2011-08-11 15:36:57,742][[32mINFO [0m][cluster.service]  
> > [Alistaire Stuart] removed {[Green  
> > Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true,  
> > data=false},}, reason: zen-disco-node\_failed([Green  
> > Goblin][fNxusRThSRqyOnsCYyFohQ][inet[/10.0.0.238:9301]]{client=true,  
> > data=false}), reason transport disconnected (with verified connect)
> > 
> > So to do the upgrade, I must have the entire cluster down, my web  
> > frontends (clients) and the elasticsearch servers ?
> > 
> > Nicolas

---

<div class="post-metadata">

**Author:** ![dottom](https://avatars.discourse-cdn.com/v4/letter/d/c68b51/32.png) [@dottom](https://discuss.elastic.co/u/dottom)\
**Post date:** [August 11, 2011, 5:53pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/5 "2011-08-11T17:53:06Z")

</div>

> I am starting to plan to upgrade to 0.17.4

Could you create a replica, break it off and start that as a separate  
cluster, upgrade the new cluster, run it in read-only mode (so you can  
service client requests but do not need to synchronize data).

Now you have time to update the main cluster because clients are running off  
the temporary, new cluster. This assumes the hardware requirements are  
feasible, and no indexing is required during this time.

---

<div class="post-metadata">

**Author:** ![Nicolas\_Lalevee](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nicolas_lalevee/32/2892_2.png) [@Nicolas\_Lalevee](https://discuss.elastic.co/u/Nicolas_Lalevee)\
**Post date:** [August 11, 2011, 6:37pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/6 "2011-08-11T18:37:36Z")

</div>

Le 11 août 2011 à 19:53, Tom Le a écrit :

> > I am starting to plan to upgrade to 0.17.4
> 
> Could you create a replica, break it off and start that as a separate cluster, upgrade the new cluster, run it in read-only mode (so you can service client requests but do not need to synchronize data).
> 
> Now you have time to update the main cluster because clients are running off the temporary, new cluster. This assumes the hardware requirements are feasible, and no indexing is required during this time.

Not having write availability is like having a downtime for the product I develop. So it will be simpler to get everything down.  
And we are not that obsessed with availability since we authorize ourself to have downtime due to some sql schema migration. But we try hard to not have downtime if its not absolutely required.

Nicolas

---

<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:** [August 11, 2011, 6:41pm UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/7 "2011-08-11T18:41:05Z")

</div>

Agreed, the aim for elasticsearch is to get to a state where it will have  
backward and forward compatible communication channels. But thats down the  
road...

2011/8/11 Nicolas Lalevée [nicolas.lalevee@hibnet.org](mailto:nicolas.lalevee@hibnet.org)

> Le 11 août 2011 à 19:53, Tom Le a écrit :
> 
> > > I am starting to plan to upgrade to 0.17.4
> > 
> > Could you create a replica, break it off and start that as a separate  
> > cluster, upgrade the new cluster, run it in read-only mode (so you can  
> > service client requests but do not need to synchronize data).
> > 
> > Now you have time to update the main cluster because clients are running  
> > off the temporary, new cluster. This assumes the hardware requirements are  
> > feasible, and no indexing is required during this time.
> 
> Not having write availability is like having a downtime for the product I  
> develop. So it will be simpler to get everything down.  
> And we are not that obsessed with availability since we authorize ourself  
> to have downtime due to some sql schema migration. But we try hard to not  
> have downtime if its not absolutely required.
> 
> Nicolas

---

<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, 3:57am UTC](https://discuss.elastic.co/t/upgrade-client-and-server-from-0-16-x-to-0-17-x/5125/8 "2017-07-06T03:57:23Z")

</div>


