elastic / elasticsearch

Free and Open Source, Distributed, RESTful Search Engine
https://www.elastic.co/products/elasticsearch
Other
1.22k stars 24.85k forks source link

Separate out tcp transport handshake version from TransportVersion #94081

Open thecoop opened 1 year ago

thecoop commented 1 year ago

As discussed in #93225 , currently the concept of transport version is quite heavily integrated into release version compatibility. As release versions are not applicable for cloud deployments, we need to separate out code that manages initial tcp transport handshakes that negotiates the transport version from other code that manages transport messages.

The initial handshake should have its own version number, independent of on-prem version and transport version, that is used in the initial messages to negotiate the TransportVersion to use for actual communications. This also needs to be backwards-compatible with on-prem versions the released code needs to communicate with

elasticsearchmachine commented 1 year ago

Pinging @elastic/es-distributed (Team:Distributed)