[Test] Test replication between different immudb versions
#1,450 opened on Nov 9, 2022
Repository metrics
- Stars
- (8,999 stars)
- PR merge metrics
- (PR metrics pending)
Description
What would you like to be added or enhanced
In order to ensure we don't accidentally break backwards compatibility, we should run a dedicated replication tests that ensure a cluster consisting of the current master code can cooperate with the previous released version.
Why is this needed
Our unit tests only test the cluster within a single version of immudb however a no-downtime update of the immudb cluster requires running cluster that consists of immudb at different versions. We should have automated tests that ensure such upgrade can be done.
Additional context
In order to run the test, an older immudb version is needed. This can be easily done by running such version using a docker image. The cluster should consist then of some nodes running in a docker container and some nodes running from a compiled immudb binary (could also be in a docker container through some ad-hoc built image but that's not necessary).
Whether the cluster can work and perform read and write operations if it consists of immudb at different versions. Various combinations should be checked - e.g. primary in old+replicas in new version, primary in new version, replicas in old, some mixture of old and new version in replicas, updating configuration using immuadmin from different versions, connecting to cluster with immuclient in different versions etc