From ed83694e4cda986be5cab2b9de35ced08161b409 Mon Sep 17 00:00:00 2001 From: Daniele Mammarella Date: Wed, 6 Mar 2024 13:58:51 +0100 Subject: [PATCH] [JBPM-10224] Missing index 'IDX_EventTypes_IdElement' with hibernate.hbm2ddl.auto=update --- .../db/upgrade-scripts/mysql5/jbpm-7.72-to-7.73.sql | 3 +++ .../db/upgrade-scripts/mysql5/rhpam-7.13-to-7.13.1.sql | 5 ++++- .../db/upgrade-scripts/mysqlinnodb/jbpm-7.72-to-7.73.sql | 3 +++ .../db/upgrade-scripts/mysqlinnodb/rhpam-7.13-to-7.13.1.sql | 5 ++++- .../persistence/processinstance/ProcessInstanceInfo.java | 2 +- 5 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/jbpm-7.72-to-7.73.sql create mode 100644 jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/jbpm-7.72-to-7.73.sql diff --git a/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/jbpm-7.72-to-7.73.sql b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/jbpm-7.72-to-7.73.sql new file mode 100644 index 0000000000..baa3eaf415 --- /dev/null +++ b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/jbpm-7.72-to-7.73.sql @@ -0,0 +1,3 @@ +DROP INDEX IDX_EventTypes_element; +DROP INDEX IDX_EventTypes_compound; +CREATE INDEX IDX_EventTypes_IdElement ON EventTypes(InstanceId,element); \ No newline at end of file diff --git a/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/rhpam-7.13-to-7.13.1.sql b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/rhpam-7.13-to-7.13.1.sql index 079eaf9200..1915d75d8e 100644 --- a/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/rhpam-7.13-to-7.13.1.sql +++ b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysql5/rhpam-7.13-to-7.13.1.sql @@ -1,2 +1,5 @@ ALTER TABLE TimerMappingInfo ADD COLUMN processInstanceId bigint; -ALTER TABLE TimerMappingInfo MODIFY timerId bigint NULL; \ No newline at end of file +ALTER TABLE TimerMappingInfo MODIFY timerId bigint NULL; +DROP INDEX IDX_EventTypes_element; +DROP INDEX IDX_EventTypes_compound; +CREATE INDEX IDX_EventTypes_IdElement ON EventTypes(InstanceId,element); \ No newline at end of file diff --git a/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/jbpm-7.72-to-7.73.sql b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/jbpm-7.72-to-7.73.sql new file mode 100644 index 0000000000..baa3eaf415 --- /dev/null +++ b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/jbpm-7.72-to-7.73.sql @@ -0,0 +1,3 @@ +DROP INDEX IDX_EventTypes_element; +DROP INDEX IDX_EventTypes_compound; +CREATE INDEX IDX_EventTypes_IdElement ON EventTypes(InstanceId,element); \ No newline at end of file diff --git a/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/rhpam-7.13-to-7.13.1.sql b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/rhpam-7.13-to-7.13.1.sql index 079eaf9200..1915d75d8e 100644 --- a/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/rhpam-7.13-to-7.13.1.sql +++ b/jbpm-db-scripts/src/main/resources/db/upgrade-scripts/mysqlinnodb/rhpam-7.13-to-7.13.1.sql @@ -1,2 +1,5 @@ ALTER TABLE TimerMappingInfo ADD COLUMN processInstanceId bigint; -ALTER TABLE TimerMappingInfo MODIFY timerId bigint NULL; \ No newline at end of file +ALTER TABLE TimerMappingInfo MODIFY timerId bigint NULL; +DROP INDEX IDX_EventTypes_element; +DROP INDEX IDX_EventTypes_compound; +CREATE INDEX IDX_EventTypes_IdElement ON EventTypes(InstanceId,element); \ No newline at end of file diff --git a/jbpm-persistence/jbpm-persistence-jpa/src/main/java/org/jbpm/persistence/processinstance/ProcessInstanceInfo.java b/jbpm-persistence/jbpm-persistence-jpa/src/main/java/org/jbpm/persistence/processinstance/ProcessInstanceInfo.java index 00696764e4..b2eb22abad 100644 --- a/jbpm-persistence/jbpm-persistence-jpa/src/main/java/org/jbpm/persistence/processinstance/ProcessInstanceInfo.java +++ b/jbpm-persistence/jbpm-persistence-jpa/src/main/java/org/jbpm/persistence/processinstance/ProcessInstanceInfo.java @@ -85,7 +85,7 @@ public class ProcessInstanceInfo implements PersistentProcessInstance { @ElementCollection @CollectionTable(name="EventTypes", joinColumns=@JoinColumn(name="InstanceId"), indexes = {@Index(name = "IDX_EventTypes_Id", columnList="InstanceId"), - @Index(name = "IDX_EventTypes_element", columnList="element")}) + @Index(name = "IDX_EventTypes_IdElement", columnList="InstanceId, element")}) @Column(name="element") private Set eventTypes = new HashSet();