[
https://issues.apache.org/jira/browse/CASSANDRA-15193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksey Yeschenko updated CASSANDRA-15193:
------------------------------------------
Reviewers: Aleksey Yeschenko, Alex Petrov, Aleksey Yeschenko (was: Aleksey
Yeschenko, Alex Petrov)
Aleksey Yeschenko, Alex Petrov, Aleksey Yeschenko (was: Aleksey
Yeschenko, Alex Petrov)
Status: Review In Progress (was: Patch Available)
> Add ability to cap max negotiable protocol version
> --------------------------------------------------
>
> Key: CASSANDRA-15193
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15193
> Project: Cassandra
> Issue Type: Bug
> Components: Messaging/Client
> Reporter: Sam Tunnicliffe
> Assignee: Sam Tunnicliffe
> Priority: Normal
> Fix For: 3.0.x, 3.11.x
>
>
> 3.0 and native protocol V4 introduced a change to how PagingState is
> serialized. Unfortunately that can break requests during upgrades: since
> paging states are opaque, it's possible for a client to receive a paging
> state encoded as V3 on a 2.1 node, and then send it to a 3.0 node on a V4
> session. The version of the current session will be used to deserialize the
> paging state, instead of the actual version used to serialize it, and the
> request will fail.
> CASSANDRA-15176 solves half of this problem by enabling 3.0 nodes to
> serialize mis-versioned PagingStates. To address the other side of the issue,
> 2.1 nodes receiving V4 PagingStates, we can introduce a property to cap the
> max native protocol version that the 3.0 nodes will negotiate with clients.
> If we cap this to V3 during upgrades, no V4 connections will be established
> and so no incompatible PagingStates will be sent to clients.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]