Browse Source

Executing SQL scripts in lexicographical order

Reported by: Yeiij, HorridoJoho
Zoey76 4 năm trước cách đây
mục cha
commit
6b47aaf95e
2 tập tin đã thay đổi với 6 bổ sung2 xóa
  1. 1 1
      pom.xml
  2. 5 1
      src/main/java/com/l2jserver/cli/dao/AbstractDatabaseDAO.java

+ 1 - 1
pom.xml

@@ -3,7 +3,7 @@
 	<modelVersion>4.0.0</modelVersion>
 	<groupId>com.l2jserver</groupId>
 	<artifactId>l2j-server-cli</artifactId>
-	<version>1.0.6</version>
+	<version>1.0.7</version>
 	<name>L2J Server Command Line</name>
 	<properties>
 		<maven.compiler.source>14</maven.compiler.source>

+ 5 - 1
src/main/java/com/l2jserver/cli/dao/AbstractDatabaseDAO.java

@@ -19,6 +19,7 @@
 package com.l2jserver.cli.dao;
 
 import java.io.File;
+import java.util.Arrays;
 import java.util.prefs.Preferences;
 
 import com.l2jserver.cli.config.ServerConfiguration;
@@ -55,7 +56,8 @@ public abstract class AbstractDatabaseDAO extends AbstractDAO {
 
 	public void basic(File sqlPath) {
 		System.out.println("Installing basic SQL scripts...");
-		runSQLFiles(sqlPath.listFiles(new SQLFilter()));
+		final var files = sqlPath.listFiles(new SQLFilter());
+		runSQLFiles(files);
 	}
 
 	protected void updates(DatabaseInstallType mode, String cleanup, File sqlPath) {
@@ -106,6 +108,8 @@ public abstract class AbstractDatabaseDAO extends AbstractDAO {
 	}
 
 	private void runSQLFiles(File... sqlFiles) {
+		Arrays.sort(sqlFiles);
+		
 		for (var sqlFile : sqlFiles) {
 			try {
 				System.out.println("Running " + sqlFile.getName() + "...");