databaseChangeLog:
   - objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS
+
   - changeSet:
+      id: 1400-1
       author: policy
-      id: 1400
       preConditions:
-        not:
-          tableExists:
-            tableName: automationcomposition
-        onFail: MARK_RAN
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: automationcomposition
       changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0100-automationcomposition.sql
+
+  - changeSet:
+      id: 1400-2
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: automationcompositiondefinition
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0200-automationcompositiondefinition.sql
+
+  - changeSet:
+      id: 1400-3
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: automationcompositionelement
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0300-automationcompositionelement.sql
+
+  - changeSet:
+      id: 1400-4
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: nodetemplatestate
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0400-nodetemplatestate.sql
+
+  - changeSet:
+      id: 1400-5
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: participant
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0500-participant.sql
+
+  - changeSet:
+      id: 1400-6
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: participantsupportedacelements
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0600-participantsupportedelements.sql
+
+  - changeSet:
+      id: 1400-7
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: ac_compositionId
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0700-ac_compositionId_index.sql
+
+  - changeSet:
+      id: 1400-8
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: ac_element_fk
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0800-ac_element_fk_index.sql
+
+  - changeSet:
+      id: 1400-9
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: dt_element_fk
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/0900-dt_element_fk_index.sql
+
+  - changeSet:
+      id: 1400-10
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: supported_element_fk
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/1000-supported_element_fk_index.sql
+
+  - changeSet:
+      id: 1400-11
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - foreignKeyConstraintExists:
+                foreignKeyName: ac_element_fk
+                foreignKeyTableName: automationcompositionelement
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/1100-automationcompositionelement_fk.sql
+
+  - changeSet:
+      id: 1400-12
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - foreignKeyConstraintExists:
+                foreignKeyName: dt_element_fk
+                foreignKeyTableName: nodetemplatestate
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/1200-nodetemplate_fk.sql
+
+  - changeSet:
+      id: 1400-13
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - foreignKeyConstraintExists:
+                foreignKeyName: supported_element_fk
+                foreignKeyTableName: participantsupportedacelements
+      changes:
         - sqlFile:
             path: db/changelog/1400/upgrade/1300-participantsupportedelements_fk.sql
 
 
 databaseChangeLog:
   - objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS
+
   - changeSet:
+      id: 1500-1
       author: policy
-      id: 1500
       preConditions:
-        not:
-          tableExists:
-            tableName: participantreplica
-        onFail: MARK_RAN
+        - onFail: MARK_RAN
+        - not:
+            - columnExists:
+                tableName: automationcomposition
+                columnName: lastMsg
       changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0100-automationcomposition.sql
+
+  - changeSet:
+      id: 1500-2
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - columnExists:
+                tableName: automationcompositiondefinition
+                columnName: lastMsg
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0200-automationcompositiondefinition.sql
+
+  - changeSet:
+      id: 1500-3
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: participantreplica
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0300-participantreplica.sql
+
+  - changeSet:
+      id: 1500-4
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - columnExists:
+                tableName: participant
+                columnName: lastMsg
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0400-participant.sql
+
+  - changeSet:
+      id: 1500-5
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: participant_replica_fk
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0500-participant_replica_fk_index.sql
+
+  - changeSet:
+      id: 1500-6
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - foreignKeyConstraintExists:
+                foreignKeyName: participant_replica_fk
+                foreignKeyTableName: participantreplica
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0600-participant_replica_fk.sql
+
+  - changeSet:
+      id: 1500-7
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0700-automationcompositionelement.sql
+
+  - changeSet:
+      id: 1500-8
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1500/upgrade/0800-nodetemplatestate.sql
 
 
 databaseChangeLog:
   - objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS
+
   - changeSet:
+      id: 1600-1
       author: policy
-      id: 1600
       preConditions:
-        not:
-          columnExists:
-            tableName: automationcomposition
-            columnName: subState
-        onFail: MARK_RAN
+        - onFail: MARK_RAN
+        - not:
+            - columnExists:
+                tableName: automationcomposition
+                columnName: subState
       changes:
         - sqlFile:
             path: db/changelog/1600/upgrade/0100-automationcomposition.sql
+
+  - changeSet:
+      id: 1600-2
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - columnExists:
+                tableName: automationcompositionelement
+                columnName: subState
+      changes:
         - sqlFile:
             path: db/changelog/1600/upgrade/0200-automationcompositionelement.sql
 
 
 databaseChangeLog:
   - objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS
+
   - changeSet:
+      id: 1601-1
       author: policy
-      id: 1601
       changes:
         - sqlFile:
             path: db/changelog/1601/upgrade/0100-automationcomposition.sql
+
+  - changeSet:
+      id: 1601-2
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1601/upgrade/0200-automationcompositionelement.sql
 
 
 databaseChangeLog:
   - objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS
+
   - changeSet:
+      id: 1700-1
       author: policy
-      id: 1700
       preConditions:
-        not:
-          tableExists:
-            tableName: message
-        onFail: MARK_RAN
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: message
       changes:
         - sqlFile:
             path: db/changelog/1700/upgrade/0100-message.sql
+
+  - changeSet:
+      id: 1700-2
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: messagejob
+      changes:
         - sqlFile:
             path: db/changelog/1700/upgrade/0200-messagejob.sql
+
+  - changeSet:
+      id: 1700-3
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: messagejob_identificationId_index
+      changes:
         - sqlFile:
             path: db/changelog/1700/upgrade/0300-messagejob_identificationId_index.sql
 
 
 databaseChangeLog:
   - objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS
+
   - changeSet:
+      id: 1701-1
       author: policy
-      id: 1701
       preConditions:
-        not:
-          tableExists:
-            tableName: automationcompositionrollback
-        onFail: MARK_RAN
+        - onFail: MARK_RAN
+        - not:
+            - tableExists:
+                tableName: automationcompositionrollback
       changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0100-automationcompositionrollback.sql
+
+  - changeSet:
+      id: 1701-2
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0200-automationcomposition.sql
+
+  - changeSet:
+      id: 1701-3
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0300-automationcompositionelement.sql
+
+  - changeSet:
+      id: 1701-4
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - foreignKeyConstraintExists:
+                foreignKeyName: ac_composition_fk
+                foreignKeyTableName: automationcomposition
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0400-automationcomposition_fk.sql
+
+  - changeSet:
+      id: 1701-5
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0500-automationcompositiondefinition.sql
+
+  - changeSet:
+      id: 1701-6
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0600-nodetemplatestate.sql
+
+  - changeSet:
+      id: 1701-7
+      author: policy
+      preConditions:
+        - onFail: MARK_RAN
+        - not:
+            - indexExists:
+                indexName: mb_identificationId_index
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0700-mb_identificationId_index.sql
+
+  - changeSet:
+      id: 1701-8
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0800-participantreplica.sql
+
+  - changeSet:
+      id: 1701-9
+      author: policy
+      changes:
         - sqlFile:
             path: db/changelog/1701/upgrade/0900-participantsupportedacelements.sql