This message was deleted.
# general
s
This message was deleted.
d
There are a significant amount of changes between 2.4 and 2.11, including JDK version changes etc. So I would recommend doing a piecemeal upgrade. Maybe one or two minor versions at a time. This should be fairly easy if you are using the pulsar helm charts.
c
On a similar vein, @David K do you know of anywhere in the docs that talks about client/broker compatability? I needed this recently in deciding to bump client to 2.11 when broker is 2.10
d
I am not aware of this being documented, but there is general design goal of Pulsar to ensure full compatibility between the same major version clients and brokers, e.g. 2.x clients are compatible with all 2.x brokers, etc. please let me know if you find this to not be the case.
c
Thx @David K. Will do. Should we add this somewhere in the docs?
d
That is a great idea.
👍 1
b
yeah, there seems to be do direct docs for this. Only reference I see is this
Copy code
Pay attention to the upgrading order of components. In general, you do not need to upgrade your ZooKeeper or configuration store cluster (the global ZooKeeper cluster). You need to upgrade bookies first, and then upgrade brokers, proxies, and your clients.
c
I will submit a PR for it in the next couple of days.
🙌 2
b
Thanks much Chris..
c
Yw @bala rao
a
This is also an interesting read that I hope the community votes soon on which is to move towards a more structured upgrade guidance: https://github.com/apache/pulsar/issues/15966 Hope this helps.
✅ 1
m
Feel free to tag me on any docs PRs. I am familiar with the protocol requirements. Essentially, during the handshake, the client and the server agree on a version of the protocol to use. Then, each is supposed to respond accordingly. Mostly, the changes are just about which features are available and how certain aspects of the connection lifecycle are handled. As for upgrading the cluster, Pulsar recommends upgrading linearly (2.4 -> 2.5, then 2.5 -> 2.6, and so on).
thankyou 1
👍 2
y
upgrade java first, if you are still using java8. Although java 8 is tls, many java libs are moving to modern java (module with stronger access control).
c
BTW - I did not mean to piggyback on this thread w/ the whole compatibility question. Just to follow up though, I created https://github.com/apache/pulsar-site/pull/407 to capture the general info.
🙌 1
👀 1
👍 1