# elasticSearch how to upgrade jvm?

**URL:** <https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477>\
**Category:** Elasticsearch\
**Created:** [July 14, 2016, 6:55am UTC](https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477 "2016-07-14T06:55:05Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aviad\_Sharfshtein](https://avatars.discourse-cdn.com/v4/letter/a/71c47a/32.png) [@Aviad\_Sharfshtein](https://discuss.elastic.co/u/Aviad_Sharfshtein)\
**Post date:** [July 14, 2016, 6:55am UTC](https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477/1 "2016-07-14T06:55:05Z")

</div>

Hi,

I have an old production ES cluster, running OpenJdk6 and ES 1.0.0

I'd like to update the JVM to a newer one (Open-Jdk-7) - but when I tried to add a new machine with the newer JMV, I got issues with Exception Serialization.

how should I perform the JVM upgrade?  
my ES clients are transport client - will this upgrade affect them as well?

Thanks.

---

<div class="post-metadata">

**Author:** ![javanna](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/javanna/32/4698_2.png) [@javanna](https://discuss.elastic.co/u/javanna)\
**Post date:** [July 14, 2016, 7:31am UTC](https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477/2 "2016-07-14T07:31:54Z")

</div>

Hi,  
upgrading the jdk from 1.6 to 1.7 cannot be done on a live cluster. you need to take the take the cluster down and restart each node with the newer jdk. That is because of serialization issues. We use our own serialization binary protocol, but for exception we rely on java standard serialization, hence why you ran into problems. Same goes for the transport client, as it uses the same binary protocol.

In general, it is strongly recommended that all of the nodes and java clients are on the same exact jdk version. There were at some point breaking changes to java serialization between minor jdk versions that could cause problems.

In the upcoming 5.0 version we won't use java serialization anymore for exceptions.

1.0.0 is quite an ancient version at this point, is there any chance you are going to upgrade to 2.x soon?

Cheers  
Luca

---

<div class="post-metadata">

**Author:** ![Aviad\_Sharfshtein](https://avatars.discourse-cdn.com/v4/letter/a/71c47a/32.png) [@Aviad\_Sharfshtein](https://discuss.elastic.co/u/Aviad_Sharfshtein)\
**Post date:** [July 14, 2016, 11:55am UTC](https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477/3 "2016-07-14T11:55:53Z")

</div>

I'd live to upgrade to 2.x, but for that I need to upgrade the JVM first....

---

<div class="post-metadata">

**Author:** ![javanna](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/javanna/32/4698_2.png) [@javanna](https://discuss.elastic.co/u/javanna)\
**Post date:** [July 14, 2016, 11:56am UTC](https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477/4 "2016-07-14T11:56:15Z")

</div>

Perfect, one step at a time 😉

---

<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 5, 2017, 10:35pm UTC](https://discuss.elastic.co/t/elasticsearch-how-to-upgrade-jvm/55477/5 "2017-07-05T22:35:37Z")

</div>


