From ddfde893c79963732564519cd335012f98ec7f81 Mon Sep 17 00:00:00 2001 From: Dejan Bosanac Date: Fri, 17 Jan 2025 11:04:19 +0100 Subject: [PATCH] fix: improve product version range migration --- etc/deploy/compose/compose.yaml | 1 + .../src/m0000800_alter_product_version_range_scheme.rs | 8 ++++++-- .../migration_down.sql | 9 +++++++++ .../migration_up.sql | 9 +++++++++ 4 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 migration/src/m0000800_alter_product_version_range_scheme/migration_down.sql create mode 100644 migration/src/m0000800_alter_product_version_range_scheme/migration_up.sql diff --git a/etc/deploy/compose/compose.yaml b/etc/deploy/compose/compose.yaml index d6ff364c3..c90df65d7 100644 --- a/etc/deploy/compose/compose.yaml +++ b/etc/deploy/compose/compose.yaml @@ -7,3 +7,4 @@ services: POSTGRES_PASSWORD: "trustify" POSTGRES_DB: "trustify" restart: always + shm_size: '1g' \ No newline at end of file diff --git a/migration/src/m0000800_alter_product_version_range_scheme.rs b/migration/src/m0000800_alter_product_version_range_scheme.rs index 6119b8630..ef37b4696 100644 --- a/migration/src/m0000800_alter_product_version_range_scheme.rs +++ b/migration/src/m0000800_alter_product_version_range_scheme.rs @@ -9,7 +9,9 @@ impl MigrationTrait for Migration { // use rpm version range scheme as it covers more usecases manager .get_connection() - .execute_unprepared(r#"UPDATE version_range SET version_scheme_id = 'rpm' WHERE id IN (SELECT version_range_id FROM product_version_range)"#) + .execute_unprepared(include_str!( + "m0000800_alter_product_version_range_scheme/migration_up.sql" + )) .await?; Ok(()) @@ -19,7 +21,9 @@ impl MigrationTrait for Migration { // return to semver version range scheme manager .get_connection() - .execute_unprepared(r#"UPDATE version_range SET version_scheme_id = 'semver' WHERE id IN (SELECT version_range_id FROM product_version_range)"#) + .execute_unprepared(include_str!( + "m0000800_alter_product_version_range_scheme/migration_down.sql" + )) .await?; Ok(()) diff --git a/migration/src/m0000800_alter_product_version_range_scheme/migration_down.sql b/migration/src/m0000800_alter_product_version_range_scheme/migration_down.sql new file mode 100644 index 000000000..70c77bfe4 --- /dev/null +++ b/migration/src/m0000800_alter_product_version_range_scheme/migration_down.sql @@ -0,0 +1,9 @@ +WITH ranges_to_update AS ( + SELECT version_range.* FROM + version_range + JOIN product_version_range ON version_range.id = product_version_range.version_range_id +) +UPDATE version_range +SET version_scheme_id = 'semver' +FROM ranges_to_update +WHERE version_range.id = ranges_to_update.id \ No newline at end of file diff --git a/migration/src/m0000800_alter_product_version_range_scheme/migration_up.sql b/migration/src/m0000800_alter_product_version_range_scheme/migration_up.sql new file mode 100644 index 000000000..74b6b4755 --- /dev/null +++ b/migration/src/m0000800_alter_product_version_range_scheme/migration_up.sql @@ -0,0 +1,9 @@ +WITH ranges_to_update AS ( + SELECT version_range.* FROM + version_range + JOIN product_version_range ON version_range.id = product_version_range.version_range_id +) +UPDATE version_range +SET version_scheme_id = 'rpm' +FROM ranges_to_update +WHERE version_range.id = ranges_to_update.id \ No newline at end of file