codenotary/immudb

[Test] Test replication between different immudb versions

Open

#1,450 opened on Nov 9, 2022

 (1 comment) (0 reactions) (0 assignees)Go (371 forks)auto 404
enhancementgood first issuetests

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

Contributor guide