The recommended approach to upgrading is to perform a replica-safe rolling restart of instances in
each datacenter, one datacenter at a time. > In case of an upgrade failure, would it be possible
to remove the data center from the cluster, restore the datacenter to C*3 SW and add it back to
cluster which will contain datacenters in both C* 3 and C*4? Streaming and repair are not supported
between 3.x and 4.x instances, so it will not be possible to bootstrap a datacenter as 3.x from nodes
that are running 4.x. The approach above isn't an option and, in many topologies, may violate
consistency or induce data loss. > Alternatively, could we remove the datacenter, perform the SW
upgrade to C*4 and then add it back to the cluster? You *could* do this if the datacenter is added
back on 4.x, but it's not quite clear what it would accomplish. By far the safest and most tested
upgrade path used by nearly everyone is a replica-safe rolling restart of instances in each
datacenter, one datacenter at a time. Could you say more about the concerns you have with this
upgrade path, or the worries you are hoping to mitigate? – Scott On Oct 26, 2023, at 8:32 AM,
"Michalis Kotsiouros (EXT) via user" <user@cassandra.apache.org> wrote: Hello
Cassandra community, We are trying to upgrade our systems from Cassandra 3 to Cassandra 4. We plan to
do this per data center. During the upgrade, a cluster with mixed SW levels is expected. At this
point is it possible to perform topology changes? In case of an upgrade failure, would it be possible
to remove the data center from the cluster, restore the datacenter to C*3 SW and add it back to
cluster which will contain datacenters in both C* 3 and C*4? Alternatively, could we remove the
datacenter, perform the SW upgrade to C*4 and then add it back to the cluster? Are there any
suggestions or experiences regarding this fallback scenario? BR MK