This is an automated email from the ASF dual-hosted git repository.

weizhouapache pushed a commit to branch 4.22
in repository https://gitbox.apache.org/repos/asf/cloudstack.git

commit 265b554d608ef42d7c77de0eab088a46f8c4fd81
Author: Wei Zhou <[email protected]>
AuthorDate: Fri Jul 10 13:04:14 2026 +0200

    Fix 4.22 build failures after forward-merge and rename 42010to42100 to 
42040to42100
---
 .../com/cloud/upgrade/DatabaseUpgradeChecker.java  |  6 ++--
 ...e42010to42100.java => Upgrade42040to42100.java} |  8 +++---
 ...cleanup.sql => schema-42040to42100-cleanup.sql} |  2 +-
 ...ma-42010to42100.sql => schema-42040to42100.sql} |  2 +-
 .../cloud/upgrade/DatabaseUpgradeCheckerTest.java  | 32 ++++++++++++++++++----
 ...42100Test.java => Upgrade42040to42100Test.java} |  4 +--
 6 files changed, 38 insertions(+), 16 deletions(-)

diff --git 
a/engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java 
b/engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java
index 170a12f9374..3868ca960e0 100644
--- a/engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java
+++ b/engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java
@@ -89,11 +89,11 @@ import com.cloud.upgrade.dao.Upgrade41810to41900;
 import com.cloud.upgrade.dao.Upgrade41900to41910;
 import com.cloud.upgrade.dao.Upgrade41910to42000;
 import com.cloud.upgrade.dao.Upgrade42000to42010;
-import com.cloud.upgrade.dao.Upgrade42010to42100;
-import com.cloud.upgrade.dao.Upgrade42200to42210;
 import com.cloud.upgrade.dao.Upgrade42020to42030;
 import com.cloud.upgrade.dao.Upgrade42030to42040;
+import com.cloud.upgrade.dao.Upgrade42040to42100;
 import com.cloud.upgrade.dao.Upgrade42100to42200;
+import com.cloud.upgrade.dao.Upgrade42200to42210;
 import com.cloud.upgrade.dao.Upgrade420to421;
 import com.cloud.upgrade.dao.Upgrade421to430;
 import com.cloud.upgrade.dao.Upgrade430to440;
@@ -241,9 +241,9 @@ public class DatabaseUpgradeChecker implements 
SystemIntegrityChecker {
                 .next("4.19.0.0", new Upgrade41900to41910())
                 .next("4.19.1.0", new Upgrade41910to42000())
                 .next("4.20.0.0", new Upgrade42000to42010())
-                .next("4.20.1.0", new Upgrade42010to42100())
                 .next("4.20.2.0", new Upgrade42020to42030())
                 .next("4.20.3.0", new Upgrade42030to42040())
+                .next("4.20.4.0", new Upgrade42040to42100())
                 .next("4.21.0.0", new Upgrade42100to42200())
                 .next("4.22.0.0", new Upgrade42200to42210())
                 .build();
diff --git 
a/engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42010to42100.java 
b/engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42040to42100.java
similarity index 97%
rename from 
engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42010to42100.java
rename to 
engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42040to42100.java
index 786ee5afbc8..64ac2c90bc0 100644
--- a/engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42010to42100.java
+++ b/engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42040to42100.java
@@ -32,12 +32,12 @@ import com.cloud.upgrade.SystemVmTemplateRegistration;
 import com.cloud.utils.db.TransactionLegacy;
 import com.cloud.utils.exception.CloudRuntimeException;
 
-public class Upgrade42010to42100 extends DbUpgradeAbstractImpl implements 
DbUpgrade, DbUpgradeSystemVmTemplate {
+public class Upgrade42040to42100 extends DbUpgradeAbstractImpl implements 
DbUpgrade, DbUpgradeSystemVmTemplate {
     private SystemVmTemplateRegistration systemVmTemplateRegistration;
 
     @Override
     public String[] getUpgradableVersionRange() {
-        return new String[] {"4.20.1.0", "4.21.0.0"};
+        return new String[] {"4.20.4.0", "4.21.0.0"};
     }
 
     @Override
@@ -52,7 +52,7 @@ public class Upgrade42010to42100 extends 
DbUpgradeAbstractImpl implements DbUpgr
 
     @Override
     public InputStream[] getPrepareScripts() {
-        final String scriptFile = "META-INF/db/schema-42010to42100.sql";
+        final String scriptFile = "META-INF/db/schema-42040to42100.sql";
         final InputStream script = 
Thread.currentThread().getContextClassLoader().getResourceAsStream(scriptFile);
         if (script == null) {
             throw new CloudRuntimeException("Unable to find " + scriptFile);
@@ -69,7 +69,7 @@ public class Upgrade42010to42100 extends 
DbUpgradeAbstractImpl implements DbUpgr
 
     @Override
     public InputStream[] getCleanupScripts() {
-        final String scriptFile = 
"META-INF/db/schema-42010to42100-cleanup.sql";
+        final String scriptFile = 
"META-INF/db/schema-42040to42100-cleanup.sql";
         final InputStream script = 
Thread.currentThread().getContextClassLoader().getResourceAsStream(scriptFile);
         if (script == null) {
             throw new CloudRuntimeException("Unable to find " + scriptFile);
diff --git 
a/engine/schema/src/main/resources/META-INF/db/schema-42010to42100-cleanup.sql 
b/engine/schema/src/main/resources/META-INF/db/schema-42040to42100-cleanup.sql
similarity index 93%
rename from 
engine/schema/src/main/resources/META-INF/db/schema-42010to42100-cleanup.sql
rename to 
engine/schema/src/main/resources/META-INF/db/schema-42040to42100-cleanup.sql
index 5f257f2965b..b63e918b389 100644
--- 
a/engine/schema/src/main/resources/META-INF/db/schema-42010to42100-cleanup.sql
+++ 
b/engine/schema/src/main/resources/META-INF/db/schema-42040to42100-cleanup.sql
@@ -16,5 +16,5 @@
 -- under the License.
 
 --;
--- Schema upgrade cleanup from 4.20.1.0 to 4.21.0.0
+-- Schema upgrade cleanup from 4.20.4.0 to 4.21.0.0
 --;
diff --git 
a/engine/schema/src/main/resources/META-INF/db/schema-42010to42100.sql 
b/engine/schema/src/main/resources/META-INF/db/schema-42040to42100.sql
similarity index 99%
rename from engine/schema/src/main/resources/META-INF/db/schema-42010to42100.sql
rename to engine/schema/src/main/resources/META-INF/db/schema-42040to42100.sql
index 000b54b7207..bf7f3aeaf0f 100644
--- a/engine/schema/src/main/resources/META-INF/db/schema-42010to42100.sql
+++ b/engine/schema/src/main/resources/META-INF/db/schema-42040to42100.sql
@@ -16,7 +16,7 @@
 -- under the License.
 
 --;
--- Schema upgrade from 4.20.1.0 to 4.21.0.0
+-- Schema upgrade from 4.20.4.0 to 4.21.0.0
 --;
 
 CALL `cloud`.`IDEMPOTENT_ADD_COLUMN`('cloud.backup_schedule', 'max_backups', 
'INT(8) UNSIGNED NOT NULL DEFAULT 0 COMMENT ''Maximum number of backups to be 
retained''');
diff --git 
a/engine/schema/src/test/java/com/cloud/upgrade/DatabaseUpgradeCheckerTest.java 
b/engine/schema/src/test/java/com/cloud/upgrade/DatabaseUpgradeCheckerTest.java
index ab64e4698f0..884398cf410 100644
--- 
a/engine/schema/src/test/java/com/cloud/upgrade/DatabaseUpgradeCheckerTest.java
+++ 
b/engine/schema/src/test/java/com/cloud/upgrade/DatabaseUpgradeCheckerTest.java
@@ -44,7 +44,9 @@ import com.cloud.upgrade.dao.Upgrade41120to41130;
 import com.cloud.upgrade.dao.Upgrade41120to41200;
 import com.cloud.upgrade.dao.Upgrade41510to41520;
 import com.cloud.upgrade.dao.Upgrade41610to41700;
-import com.cloud.upgrade.dao.Upgrade42010to42100;
+import com.cloud.upgrade.dao.Upgrade42020to42030;
+import com.cloud.upgrade.dao.Upgrade42030to42040;
+import com.cloud.upgrade.dao.Upgrade42040to42100;
 import com.cloud.upgrade.dao.Upgrade452to453;
 import com.cloud.upgrade.dao.Upgrade453to460;
 import com.cloud.upgrade.dao.Upgrade460to461;
@@ -382,12 +384,12 @@ public class DatabaseUpgradeCheckerTest {
     }
 
     @Test
-    public void testCalculateUpgradePath42010to42100() {
+    public void testCalculateUpgradePath42010to42030() {
 
         final CloudStackVersion dbVersion = 
CloudStackVersion.parse("4.20.1.0");
         assertNotNull(dbVersion);
 
-        final CloudStackVersion currentVersion = 
CloudStackVersion.parse("4.21.0.0");
+        final CloudStackVersion currentVersion = 
CloudStackVersion.parse("4.20.3.0");
         assertNotNull(currentVersion);
 
         final DatabaseUpgradeChecker checker = new DatabaseUpgradeChecker();
@@ -395,9 +397,29 @@ public class DatabaseUpgradeCheckerTest {
 
         assertNotNull(upgrades);
         assertEquals(1, upgrades.length);
-        assertTrue(upgrades[0] instanceof Upgrade42010to42100);
+        assertTrue(upgrades[0] instanceof Upgrade42020to42030);
 
-        assertArrayEquals(new String[]{"4.20.1.0", "4.21.0.0"}, 
upgrades[0].getUpgradableVersionRange());
+        assertArrayEquals(new String[]{"4.20.2.0", "4.20.3.0"}, 
upgrades[0].getUpgradableVersionRange());
         assertEquals(currentVersion.toString(), 
upgrades[0].getUpgradedVersion());
     }
+
+    @Test
+    public void testCalculateUpgradePath42010to42100() {
+
+        final CloudStackVersion dbVersion = 
CloudStackVersion.parse("4.20.1.0");
+        assertNotNull(dbVersion);
+
+        final CloudStackVersion currentVersion = 
CloudStackVersion.parse("4.21.0.0");
+        assertNotNull(currentVersion);
+
+        final DatabaseUpgradeChecker checker = new DatabaseUpgradeChecker();
+        final DbUpgrade[] upgrades = checker.calculateUpgradePath(dbVersion, 
currentVersion);
+
+        assertNotNull(upgrades);
+        assertEquals(3, upgrades.length);
+        assertTrue(upgrades[0] instanceof Upgrade42020to42030);
+        assertTrue(upgrades[1] instanceof Upgrade42030to42040);
+        assertTrue(upgrades[2] instanceof Upgrade42040to42100);
+        assertEquals(currentVersion.toString(), 
upgrades[2].getUpgradedVersion());
+    }
 }
diff --git 
a/engine/schema/src/test/java/com/cloud/upgrade/dao/Upgrade42010to42100Test.java
 
b/engine/schema/src/test/java/com/cloud/upgrade/dao/Upgrade42040to42100Test.java
similarity index 98%
rename from 
engine/schema/src/test/java/com/cloud/upgrade/dao/Upgrade42010to42100Test.java
rename to 
engine/schema/src/test/java/com/cloud/upgrade/dao/Upgrade42040to42100Test.java
index 16908f6aaac..5a2b55f0338 100644
--- 
a/engine/schema/src/test/java/com/cloud/upgrade/dao/Upgrade42010to42100Test.java
+++ 
b/engine/schema/src/test/java/com/cloud/upgrade/dao/Upgrade42040to42100Test.java
@@ -35,9 +35,9 @@ import org.mockito.junit.MockitoJUnitRunner;
 import com.cloud.utils.db.TransactionLegacy;
 
 @RunWith(MockitoJUnitRunner.class)
-public class Upgrade42010to42100Test {
+public class Upgrade42040to42100Test {
     @Spy
-    Upgrade42010to42100 upgrade;
+    Upgrade42040to42100 upgrade;
 
     @Mock
     private Connection conn;

Reply via email to