You should not make DDL (e.g. TRUNCATE, ALTER TABLE) or DCL (e.g. GRANT,
ALTER ROLE) operations or run repair on a mixed version cluster. Source:
https://www.datastax.com/learn/whats-new-for-cassandra-4/migrating-cassandra-4x
You should also ensure the gc_grace_seconds value is large enough to
allow for the time to upgrade DC1, wait, upgrade DC2 and then complete a
repair, or you may end up with resurrected data.
You also must ensure you do not enable any new features on new version
nodes in a mixed version cluster. You may enable new features after all
nodes in the cluster are upgraded.
On 07/07/2023 20:50, Runtian Liu wrote:
Hi,
We are upgrading our Cassandra clusters from 3.0.27 to 4.0.6 and we
observed some error related to repair: j.l.IllegalArgumentException:
Unknown verb id 32
We have two datacenters for each Cassandra cluster and when we are
doing an upgrade, we want to upgrade 1 datacenter first and monitor
the upgrade datacenter for some time (1 week) to make sure there is no
issue, then we will upgrade the second datacenter for that cluster.
We have some automated repair jobs running, is it expected to have
repair stuck if we have 1 datacenter on 4.0 and 1 datacenter on 3.0?
Do you have any suggestions on how we should do the upgrade, is
waiting for 1 week between two datacenters too long?
Thanks,
Runtian