Produced by Hangzhou ApeCloud Co., Ltd
Test Engineer: Huang Zhangshu
Test Manager: Zhang Mingjing
Product Owner: Wang Ruijun
Database version upgrade testing includes major and minor version upgrades of the database. Since major version upgrades of the database may involve incompatibility issues caused by changes in data structure, etc., the situation of each engine is quite different. In the production environment, it is generally recommended to conduct compatibility tests first, and then adopt upgrade or migration methods as appropriate. Therefore, The major version upgrade test is not within the scope of this test.
This test covers minor version upgrades of the main engines, using the capabilities provided by KubeBlocks to modify the serviceVersion of the cluster yaml to achieve minor version upgrades and downgrades, and verify that the database status is normal and the data is complete after the operation.
For example,the minor version upgrade to mysql 8.0.39 can be triggered by directly modifying the value of serviceVersion in the cluster yaml or submitting the following OpsRequest
```yaml apiVersion: operations.kubeblocks.io/v1alpha1 kind: OpsRequest metadata: name: example-mysql-cluster-upgrade-cmpv-ops namespace: demo spec: clusterName: example-mysql-cluster upgrade: components: - componentName: mysql serviceVersion: 8.0.39 type: Upgrade ```
After the upgrade/downgrade operations, the database status is normal and the data is complete, thus the test is passed.
Engine | MajorVersion | From | To | State | Parameters |
Mysql ( Topology = semisync ) | mysql 8 | 8.0.30 | 8.0.31 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.30;ComponentVersionTo=8.0.31 |
8.0.31 | 8.0.32 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.31;ComponentVersionTo=8.0.32 | ||
8.0.32 | 8.0.33 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.32;ComponentVersionTo=8.0.33 | ||
8.0.33 | 8.0.34 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.33;ComponentVersionTo=8.0.34 | ||
8.0.34 | 8.0.35 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.34;ComponentVersionTo=8.0.35 | ||
8.0.35 | 8.0.36 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.35;ComponentVersionTo=8.0.36 | ||
8.0.35 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.35;ComponentVersionTo=8.0.39 | ||
8.0.36 | 8.0.37 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.36;ComponentVersionTo=8.0.37 | ||
8.0.36 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.36;ComponentVersionTo=8.0.39 | ||
8.0.37 | 8.0.38 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.37;ComponentVersionTo=8.0.38 | ||
8.0.37 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.37;ComponentVersionTo=8.0.39 | ||
8.0.38 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.38;ComponentVersionTo=8.0.39 | ||
8.0.39 | 8.0.35 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.35 | ||
8.0.39 | 8.0.36 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.36 | ||
8.0.39 | 8.0.37 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.37 | ||
8.0.39 | 8.0.38 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.38 |
Engine | MajorVersion | From | To | State | Parameters |
Mysql Proxysql ( Topology = semisync-proxysql ) | mysql 8 | 8.0.30 | 8.0.31 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.30;ComponentVersionTo=8.0.31 |
8.0.31 | 8.0.32 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.31;ComponentVersionTo=8.0.32 | ||
8.0.32 | 8.0.33 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.32;ComponentVersionTo=8.0.33 | ||
8.0.33 | 8.0.34 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.33;ComponentVersionTo=8.0.34 | ||
8.0.34 | 8.0.35 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.34;ComponentVersionTo=8.0.35 | ||
8.0.35 | 8.0.36 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.35;ComponentVersionTo=8.0.36 | ||
8.0.35 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.35;ComponentVersionTo=8.0.39 | ||
8.0.36 | 8.0.37 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.36;ComponentVersionTo=8.0.37 | ||
8.0.36 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.36;ComponentVersionTo=8.0.39 | ||
8.0.37 | 8.0.38 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.37;ComponentVersionTo=8.0.38 | ||
8.0.37 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.37;ComponentVersionTo=8.0.39 | ||
8.0.38 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.38;ComponentVersionTo=8.0.39 | ||
8.0.39 | 8.0.35 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.35 | ||
8.0.39 | 8.0.36 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.36 | ||
8.0.39 | 8.0.37 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.37 | ||
8.0.39 | 8.0.38 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.38 |
Engine | MajorVersion | From | To | State | Parameters |
Mysql Orchestrator ( Topology = orc ) | mysql 8 | 8.0.30 | 8.0.31 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.30;ComponentVersionTo=8.0.31 |
8.0.31 | 8.0.32 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.31;ComponentVersionTo=8.0.32 | ||
8.0.32 | 8.0.33 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.32;ComponentVersionTo=8.0.33 | ||
8.0.33 | 8.0.34 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.33;ComponentVersionTo=8.0.34 | ||
8.0.34 | 8.0.35 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.34;ComponentVersionTo=8.0.35 | ||
8.0.35 | 8.0.36 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.35;ComponentVersionTo=8.0.36 | ||
8.0.35 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.35;ComponentVersionTo=8.0.39 | ||
8.0.36 | 8.0.37 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.36;ComponentVersionTo=8.0.37 | ||
8.0.36 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.36;ComponentVersionTo=8.0.39 | ||
8.0.37 | 8.0.38 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.37;ComponentVersionTo=8.0.38 | ||
8.0.37 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.37;ComponentVersionTo=8.0.39 | ||
8.0.38 | 8.0.39 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.38;ComponentVersionTo=8.0.39 | ||
8.0.39 | 8.0.35 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.35 | ||
8.0.39 | 8.0.36 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.36 | ||
8.0.39 | 8.0.37 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.37 | ||
8.0.39 | 8.0.38 | PASSED | ComponentName=mysql;ComponentVersionFrom=8.0.39;ComponentVersionTo=8.0.38 |
Engine | MajorVersion | From | To | State | Parameters |
Postgresql ( Topology = replication ) | postgresql 12 | 12.14.0 | 12.14.1 | PASSED | ComponentName=postgresql;ComponentVersionFrom=12.14.0;ComponentVersionTo=12.14.1 |
12.14.0 | 12.15.0 | PASSED | ComponentName=postgresql;ComponentVersionFrom=12.14.0;ComponentVersionTo=12.15.0 | ||
12.14.1 | 12.14.0 | PASSED | ComponentName=postgresql;ComponentVersionFrom=12.14.1;ComponentVersionTo=12.14.0 | ||
12.14.1 | 12.15.0 | PASSED | ComponentName=postgresql;ComponentVersionFrom=12.14.1;ComponentVersionTo=12.15.0 | ||
12.15.0 | 12.14.0 | PASSED | ComponentName=postgresql;ComponentVersionFrom=12.15.0;ComponentVersionTo=12.14.0 | ||
12.15.0 | 12.14.1 | PASSED | ComponentName=postgresql;ComponentVersionFrom=12.15.0;ComponentVersionTo=12.14.1 |
Engine | MajorVersion | From | To | State | Parameters |
Mongodb ( Topology = replicaset ) | mongodb 7 | 7.0.12 | 7.0.16 | PASSED | ComponentName=mongodb;ComponentVersionFrom=7.0.12;ComponentVersionTo=7.0.16 |
7.0.12 | 7.0.19 | PASSED | ComponentName=mongodb;ComponentVersionFrom=7.0.12;ComponentVersionTo=7.0.19 | ||
7.0.16 | 7.0.12 | PASSED | ComponentName=mongodb;ComponentVersionFrom=7.0.16;ComponentVersionTo=7.0.12 | ||
7.0.16 | 7.0.19 | PASSED | ComponentName=mongodb;ComponentVersionFrom=7.0.16;ComponentVersionTo=7.0.19 | ||
7.0.19 | 7.0.12 | PASSED | ComponentName=mongodb;ComponentVersionFrom=7.0.19;ComponentVersionTo=7.0.12 | ||
7.0.19 | 7.0.16 | PASSED | ComponentName=mongodb;ComponentVersionFrom=7.0.19;ComponentVersionTo=7.0.16 |
Engine | MajorVersion | From | To | State | Parameters |
Qdrant ( Topology = cluster ) | qdrant 1 | 1.10.0 | 1.5.0 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.10.0;ComponentVersionTo=1.5.0 |
1.10.0 | 1.7.3 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.10.0;ComponentVersionTo=1.7.3 | ||
1.10.0 | 1.8.1 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.10.0;ComponentVersionTo=1.8.1 | ||
1.10.0 | 1.8.4 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.10.0;ComponentVersionTo=1.8.4 | ||
1.5.0 | 1.10.0 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.5.0;ComponentVersionTo=1.10.0 | ||
1.5.0 | 1.7.3 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.5.0;ComponentVersionTo=1.7.3 | ||
1.7.3 | 1.10.0 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.7.3;ComponentVersionTo=1.10.0 | ||
1.7.3 | 1.8.1 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.7.3;ComponentVersionTo=1.8.1 | ||
1.8.1 | 1.10.0 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.8.1;ComponentVersionTo=1.10.0 | ||
1.8.1 | 1.8.4 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.8.1;ComponentVersionTo=1.8.4 | ||
1.8.4 | 1.10.0 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.8.4;ComponentVersionTo=1.10.0 | ||
1.8.4 | 1.5.0 | PASSED | ComponentName=qdrant;ComponentVersionFrom=1.8.4;ComponentVersionTo=1.5.0 |
Engine | MajorVersion | From | To | State | Parameters |
ElasticSearch ( Topology = multi-node ) | master,data 7 | 7.7.1 | 7.8.1 | PASSED | ComponentName=master,data;ComponentVersionFrom=7.7.1;ComponentVersionTo=7.8.1 |
7.8.1 | 7.10.1 | PASSED | ComponentName=master,data;ComponentVersionFrom=7.8.1;ComponentVersionTo=7.10.1 |
Test Period: May 12, 2025 - May 27, 2025