From 106bacd3451c1f1a902f376d61778061512f0e5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o?= Date: Thu, 10 Jul 2025 15:28:39 +0100 Subject: [PATCH] Update migration-mysql.sql MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Correction of migration-mysql to match documentation and migrated job execution params history Signed-off-by: João --- .../core/migration/5.0/migration-mysql.sql | 36 ++++++++++++++++--- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/spring-batch-core/src/main/resources/org/springframework/batch/core/migration/5.0/migration-mysql.sql b/spring-batch-core/src/main/resources/org/springframework/batch/core/migration/5.0/migration-mysql.sql index 57fda0790d..73a40ad1e9 100644 --- a/spring-batch-core/src/main/resources/org/springframework/batch/core/migration/5.0/migration-mysql.sql +++ b/spring-batch-core/src/main/resources/org/springframework/batch/core/migration/5.0/migration-mysql.sql @@ -1,10 +1,36 @@ -ALTER TABLE BATCH_STEP_EXECUTION ADD CREATE_TIME DATETIME(6) NOT NULL DEFAULT '1970-01-01 00:00:00'; -ALTER TABLE BATCH_STEP_EXECUTION MODIFY START_TIME DATETIME(6) NULL; +ALTER TABLE BATCH_JOB_EXECUTION DROP COLUMN JOB_CONFIGURATION_LOCATION; + +ALTER TABLE BATCH_JOB_EXECUTION_PARAMS ADD COLUMN PARAMETER_NAME VARCHAR(100) NOT NULL, +ALTER TABLE BATCH_JOB_EXECUTION_PARAMS ADD COLUMN PARAMETER_TYPE VARCHAR(100) NOT NULL, +ALTER TABLE BATCH_JOB_EXECUTION_PARAMS ADD COLUMN PARAMETER_VALUE VARCHAR(2500); + +-- Ignore UPDATE without WHERE updating all the table on purpose, keeping history. +UPDATE BATCH_JOB_EXECUTION_PARAMS SET PARAMETER_NAME = KEY_NAME WHERE TRUE; -- NOSONAR +UPDATE BATCH_JOB_EXECUTION_PARAMS +SET PARAMETER_TYPE = CASE + WHEN TYPE_CD = 'DATE' THEN 'java.util.Date' + WHEN TYPE_CD = 'LONG' THEN 'java.lang.Long' + WHEN TYPE_CD = 'DOUBLE' THEN 'java.lang.Double' + WHEN TYPE_CD = 'STRING' THEN 'java.lang.String' + ELSE 'Error - unsupported TYPE_CD' + END +WHERE TRUE; -- NOSONAR +UPDATE BATCH_JOB_EXECUTION_PARAMS +SET PARAMETER_VALUE = CASE + WHEN TYPE_CD = 'DATE' THEN DATE_VAL + WHEN TYPE_CD = 'LONG' THEN LONG_VAL + WHEN TYPE_CD = 'DOUBLE' THEN DOUBLE_VAL + WHEN TYPE_CD = 'STRING' THEN STRING_VAL + ELSE 'Error - unsupported TYPE_CD' + END +WHERE TRUE; -- NOSONAR ALTER TABLE BATCH_JOB_EXECUTION_PARAMS DROP COLUMN DATE_VAL; ALTER TABLE BATCH_JOB_EXECUTION_PARAMS DROP COLUMN LONG_VAL; ALTER TABLE BATCH_JOB_EXECUTION_PARAMS DROP COLUMN DOUBLE_VAL; +ALTER TABLE BATCH_JOB_EXECUTION_PARAMS DROP COLUMN TYPE_CD; +ALTER TABLE BATCH_JOB_EXECUTION_PARAMS DROP COLUMN KEY_NAME; +ALTER TABLE BATCH_JOB_EXECUTION_PARAMS DROP COLUMN STRING_VAL; -ALTER TABLE BATCH_JOB_EXECUTION_PARAMS CHANGE COLUMN TYPE_CD PARAMETER_TYPE VARCHAR(100); -ALTER TABLE BATCH_JOB_EXECUTION_PARAMS CHANGE COLUMN KEY_NAME PARAMETER_NAME VARCHAR(100); -ALTER TABLE BATCH_JOB_EXECUTION_PARAMS CHANGE COLUMN STRING_VAL PARAMETER_VALUE VARCHAR(2500); \ No newline at end of file +ALTER TABLE BATCH_STEP_EXECUTION ADD CREATE_TIME DATETIME NOT NULL DEFAULT '1970-01-01 00:00:01'; +ALTER TABLE BATCH_STEP_EXECUTION MODIFY START_TIME DATETIME NULL;