KubeBlocks
BlogsKubeBlocks Cloud
Back

Database Engine (Addon) Upgrade Version Test Report v0.9.4

Produced by Hangzhou ApeCloud Co., Ltd

Created by

Test Engineer: Huang Zhangshu

Reviewed by

Test Manager: Zhang Mingjing

Approved by

Product Owner: Wang Ruijun


Test Description

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.

Test Method

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

Test Examples

```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
```

Test Result

After the upgrade/downgrade operations, the database status is normal and the data is complete, thus the test is passed.

Mongodb upgrade

Engine MajorVersion From To State Parameters
Mongodb mongodb 6 6.0.16 6.0.20 PASSED ComponentName=mongodb;ComponentVersionFrom=6.0.16;ComponentVersionTo=6.0.20
6.0.20 6.0.16 PASSED ComponentName=mongodb;ComponentVersionFrom=6.0.20;ComponentVersionTo=6.0.16

Mysql upgrade

Engine MajorVersion From To State Parameters
Mysql 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

Qdrant ( Topology = cluster ) upgrade

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

Test Period: Jun 18, 2025 - Jul 03, 2025

© 2025 ApeCloud PTE. Ltd.