This is an automated email from the ASF dual-hosted git repository.
ricardozanini pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-kogito-apps.git
The following commit(s) were added to refs/heads/main by this push:
new f0399a3b1 KOGITO-9825:Data index flyway postgresql migration scripts
doesn't allow multiple executions (#1884)
f0399a3b1 is described below
commit f0399a3b1d350cd8c7576ea9b3eea4af18beac06
Author: nmirasch <[email protected]>
AuthorDate: Mon Oct 30 14:30:09 2023 +0100
KOGITO-9825:Data index flyway postgresql migration scripts doesn't allow
multiple executions (#1884)
---
.../db/migration/V1.32.0__data_index_create.sql | 72 +++++++++++++++++-----
.../migration/V1.44.0__data_index_definitions.sql | 16 +++--
.../V1.45.0.0__data_index_node_definitions.sql | 11 +++-
...V1.45.0.1__add_identity_to_process_instance.sql | 6 +-
.../src/main/resources/db/migration/readme.txt | 2 +
5 files changed, 84 insertions(+), 23 deletions(-)
diff --git
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.32.0__data_index_create.sql
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.32.0__data_index_create.sql
index 58cbc17bc..5499ecb05 100644
---
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.32.0__data_index_create.sql
+++
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.32.0__data_index_create.sql
@@ -1,4 +1,4 @@
-create table attachments
+create table IF NOT EXISTS attachments
(
id varchar(255) not null,
content varchar(255),
@@ -9,7 +9,7 @@ create table attachments
primary key (id)
);
-create table comments
+create table IF NOT EXISTS comments
(
id varchar(255) not null,
content varchar(255),
@@ -19,7 +19,7 @@ create table comments
primary key (id)
);
-create table jobs
+create table IF NOT EXISTS jobs
(
id varchar(255) not null,
callback_endpoint varchar(255),
@@ -41,7 +41,7 @@ create table jobs
primary key (id)
);
-create table milestones
+create table IF NOT EXISTS milestones
(
id varchar(255) not null,
process_instance_id varchar(255) not null,
@@ -50,7 +50,7 @@ create table milestones
primary key (id, process_instance_id)
);
-create table nodes
+create table IF NOT EXISTS nodes
(
id varchar(255) not null,
definition_id varchar(255),
@@ -63,7 +63,7 @@ create table nodes
primary key (id)
);
-create table processes
+create table IF NOT EXISTS processes
(
id varchar(255) not null,
business_key varchar(255),
@@ -83,21 +83,21 @@ create table processes
primary key (id)
);
-create table processes_addons
+create table IF NOT EXISTS processes_addons
(
process_id varchar(255) not null,
addon varchar(255) not null,
primary key (process_id, addon)
);
-create table processes_roles
+create table IF NOT EXISTS processes_roles
(
process_id varchar(255) not null,
role varchar(255) not null,
primary key (process_id, role)
);
-create table tasks
+create table IF NOT EXISTS tasks
(
id varchar(255) not null,
actual_owner varchar(255),
@@ -119,41 +119,45 @@ create table tasks
primary key (id)
);
-create table tasks_admin_groups
+create table IF NOT EXISTS tasks_admin_groups
(
task_id varchar(255) not null,
group_id varchar(255) not null,
primary key (task_id, group_id)
);
-create table tasks_admin_users
+create table IF NOT EXISTS tasks_admin_users
(
task_id varchar(255) not null,
user_id varchar(255) not null,
primary key (task_id, user_id)
);
-create table tasks_excluded_users
+create table IF NOT EXISTS tasks_excluded_users
(
task_id varchar(255) not null,
user_id varchar(255) not null,
primary key (task_id, user_id)
);
-create table tasks_potential_groups
+create table IF NOT EXISTS tasks_potential_groups
(
task_id varchar(255) not null,
group_id varchar(255) not null,
primary key (task_id, group_id)
);
-create table tasks_potential_users
+create table IF NOT EXISTS tasks_potential_users
(
task_id varchar(255) not null,
user_id varchar(255) not null,
primary key (task_id, user_id)
);
+alter table if exists attachments
+ drop constraint if exists fk_attachments_tasks
+cascade;
+
alter table if exists attachments
add constraint fk_attachments_tasks
foreign key (task_id)
@@ -162,6 +166,10 @@ alter table if exists attachments
delete
cascade;
+alter table if exists comments
+ drop constraint if exists fk_comments_tasks
+cascade;
+
alter table if exists comments
add constraint fk_comments_tasks
foreign key (task_id)
@@ -170,6 +178,10 @@ alter table if exists comments
delete
cascade;
+alter table if exists milestones
+drop constraint if exists fk_milestones_process
+cascade;
+
alter table if exists milestones
add constraint fk_milestones_process
foreign key (process_instance_id)
@@ -178,6 +190,10 @@ alter table if exists milestones
delete
cascade;
+alter table if exists nodes
+drop constraint if exists fk_nodes_process
+cascade;
+
alter table if exists nodes
add constraint fk_nodes_process
foreign key (process_instance_id)
@@ -186,6 +202,10 @@ alter table if exists nodes
delete
cascade;
+alter table if exists processes_addons
+drop constraint if exists fk_processes_addons_processes
+cascade;
+
alter table if exists processes_addons
add constraint fk_processes_addons_processes
foreign key (process_id)
@@ -194,6 +214,10 @@ alter table if exists processes_addons
delete
cascade;
+alter table if exists processes_roles
+drop constraint if exists fk_processes_roles_processes
+cascade;
+
alter table if exists processes_roles
add constraint fk_processes_roles_processes
foreign key (process_id)
@@ -202,6 +226,10 @@ alter table if exists processes_roles
delete
cascade;
+alter table if exists tasks_admin_groups
+drop constraint if exists fk_tasks_admin_groups_tasks
+cascade;
+
alter table if exists tasks_admin_groups
add constraint fk_tasks_admin_groups_tasks
foreign key (task_id)
@@ -210,6 +238,10 @@ alter table if exists tasks_admin_groups
delete
cascade;
+alter table if exists tasks_admin_users
+drop constraint if exists fk_tasks_admin_users_tasks
+cascade;
+
alter table if exists tasks_admin_users
add constraint fk_tasks_admin_users_tasks
foreign key (task_id)
@@ -218,6 +250,10 @@ alter table if exists tasks_admin_users
delete
cascade;
+alter table if exists tasks_excluded_users
+drop constraint if exists fk_tasks_excluded_users_tasks
+cascade;
+
alter table if exists tasks_excluded_users
add constraint fk_tasks_excluded_users_tasks
foreign key (task_id)
@@ -226,6 +262,10 @@ alter table if exists tasks_excluded_users
delete
cascade;
+alter table if exists tasks_potential_groups
+drop constraint if exists fk_tasks_potential_groups_tasks
+cascade;
+
alter table if exists tasks_potential_groups
add constraint fk_tasks_potential_groups_tasks
foreign key (task_id)
@@ -234,6 +274,10 @@ alter table if exists tasks_potential_groups
delete
cascade;
+alter table if exists tasks_potential_users
+drop constraint if exists fk_tasks_potential_users_tasks
+cascade;
+
alter table if exists tasks_potential_users
add constraint fk_tasks_potential_users_tasks
foreign key (task_id)
diff --git
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.44.0__data_index_definitions.sql
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.44.0__data_index_definitions.sql
index 407913ff7..6c7937a44 100644
---
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.44.0__data_index_definitions.sql
+++
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.44.0__data_index_definitions.sql
@@ -1,4 +1,4 @@
-create table definitions
+create table IF NOT EXISTS definitions
(
id varchar(255) not null,
version varchar(255) not null,
@@ -9,7 +9,7 @@ create table definitions
primary key (id, version)
);
-create table definitions_addons
+create table IF NOT EXISTS definitions_addons
(
process_id varchar(255) not null,
process_version varchar(255) not null,
@@ -17,7 +17,7 @@ create table definitions_addons
primary key (process_id, process_version, addon)
);
-create table definitions_roles
+create table IF NOT EXISTS definitions_roles
(
process_id varchar(255) not null,
process_version varchar(255) not null,
@@ -25,6 +25,10 @@ create table definitions_roles
primary key (process_id, process_version, role)
);
+alter table if exists definitions_addons
+drop constraint if exists fk_definitions_addons_definitions
+cascade;
+
alter table if exists definitions_addons
add constraint fk_definitions_addons_definitions
foreign key (process_id, process_version)
@@ -33,6 +37,10 @@ alter table if exists definitions_addons
delete
cascade;
+alter table if exists definitions_roles
+drop constraint if exists fk_definitions_roles_definitions
+cascade;
+
alter table if exists definitions_roles
add constraint fk_definitions_roles_definitions
foreign key (process_id, process_version)
@@ -42,4 +50,4 @@ delete
cascade;
alter table if exists processes
- add column version varchar (255);
+ add column IF NOT EXISTS version varchar (255);
diff --git
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.0__data_index_node_definitions.sql
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.0__data_index_node_definitions.sql
index 8b5f79995..5332c4946 100644
---
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.0__data_index_node_definitions.sql
+++
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.0__data_index_node_definitions.sql
@@ -1,4 +1,4 @@
-create table definitions_nodes
+create table IF NOT EXISTS definitions_nodes
(
id varchar(255) not null,
name varchar(255),
@@ -9,7 +9,7 @@ create table definitions_nodes
primary key (id, process_id, process_version)
);
-create table definitions_nodes_metadata
+create table IF NOT EXISTS definitions_nodes_metadata
(
node_id varchar(255) not null,
process_id varchar(255) not null,
@@ -18,6 +18,9 @@ create table definitions_nodes_metadata
key varchar(255) not null,
primary key (node_id, process_id, process_version, key)
);
+alter table if exists definitions_nodes
+drop constraint if exists fk_definitions_nodes_definitions
+cascade;
alter table if exists definitions_nodes
add constraint fk_definitions_nodes_definitions
@@ -27,6 +30,10 @@ alter table if exists definitions_nodes
delete
cascade;
+alter table if exists definitions_nodes_metadata
+drop constraint if exists fk_definitions_nodes_metadata_definitions_nodes
+cascade;
+
alter table if exists definitions_nodes_metadata
add constraint fk_definitions_nodes_metadata_definitions_nodes
foreign key (node_id, process_id, process_version)
diff --git
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.1__add_identity_to_process_instance.sql
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.1__add_identity_to_process_instance.sql
index c942bfeb9..dc94cd5ca 100644
---
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.1__add_identity_to_process_instance.sql
+++
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/V1.45.0.1__add_identity_to_process_instance.sql
@@ -1,3 +1,3 @@
-ALTER TABLE processes
- ADD COLUMN created_by character varying,
- ADD COLUMN updated_by character varying;
\ No newline at end of file
+ALTER TABLE IF exists processes
+ ADD COLUMN IF NOT EXISTS created_by character varying,
+ ADD COLUMN IF NOT EXISTS updated_by character varying;
\ No newline at end of file
diff --git
a/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/readme.txt
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/readme.txt
new file mode 100644
index 000000000..e08db4d0a
--- /dev/null
+++
b/data-index/data-index-storage/data-index-storage-postgresql/src/main/resources/db/migration/readme.txt
@@ -0,0 +1,2 @@
+Ensure migration scripts are developed to support several executions over the
same database without any error.
+This feature will make sure this migration execution would be compatible with
other needed flyway migrations without broking the chain.
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]