diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2024-01-19 00:08:06 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2024-01-19 00:08:06 +0300 |
commit | af7558b036a53ebb0484e7978694a0b419c38c70 (patch) | |
tree | 198bc423fd5bb7ca04e652f5a0c1d66c7d42d2c4 /db/migrate/20230127155217_add_id_column_to_package_metadata_join_table.rb | |
parent | 055b4c04d5cef7029625c08619df4f3bcdccc6c2 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'db/migrate/20230127155217_add_id_column_to_package_metadata_join_table.rb')
-rw-r--r-- | db/migrate/20230127155217_add_id_column_to_package_metadata_join_table.rb | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/db/migrate/20230127155217_add_id_column_to_package_metadata_join_table.rb b/db/migrate/20230127155217_add_id_column_to_package_metadata_join_table.rb deleted file mode 100644 index 4ce3643208e..00000000000 --- a/db/migrate/20230127155217_add_id_column_to_package_metadata_join_table.rb +++ /dev/null @@ -1,76 +0,0 @@ -# frozen_string_literal: true - -class AddIdColumnToPackageMetadataJoinTable < Gitlab::Database::Migration[2.1] - disable_ddl_transaction! - - COMPOSITE_UNIQUE_INDEX = :i_pm_package_version_licenses_join_ids - - def up - if Gitlab::Database::PostgresPartitionedTable.where(name: 'pm_package_version_licenses').exists? - recreate_unpartitioned_tables - end - - drop_constraint(:pm_package_version_licenses, :pm_package_version_licenses_pkey, cascade: true) - add_column(:pm_package_version_licenses, :id, :primary_key) - add_concurrent_index(:pm_package_version_licenses, [:pm_package_version_id, :pm_license_id], unique: true, - name: COMPOSITE_UNIQUE_INDEX) - end - - def down - return if Gitlab::Database::PostgresPartitionedTable.where(name: 'pm_package_version_licenses').exists? - - remove_column(:pm_package_version_licenses, :id) - add_primary_key_using_index(:pm_package_version_licenses, :pm_package_version_licenses_pkey, COMPOSITE_UNIQUE_INDEX) - remove_concurrent_index_by_name(:pm_package_version_licenses, COMPOSITE_UNIQUE_INDEX) - end - - private - - def recreate_unpartitioned_tables - drop_table(:pm_package_version_licenses, force: :cascade) # rubocop:disable Migration/DropTable - drop_table(:pm_package_versions, force: :cascade) # rubocop:disable Migration/DropTable - drop_table(:pm_packages, force: :cascade) # rubocop:disable Migration/DropTable - - create_table :pm_packages do |t| - t.integer :purl_type, limit: 2, null: false - t.text :name, null: false, limit: 255 - t.timestamps_with_timezone null: false - t.index [:purl_type, :name], name: 'i_pm_packages_purl_type_and_name', unique: true - end - - create_table :pm_package_versions do |t| - t.references :pm_package, - index: false, - null: false, - foreign_key: { - to_table: :pm_packages, - column: :pm_package_id, - name: 'fk_rails_cf94c3e601', - on_delete: :cascade - } - t.text :version, null: false, limit: 255 - t.timestamps_with_timezone null: false - t.index [:pm_package_id, :version], name: 'i_pm_package_versions_on_package_id_and_version', unique: true - t.index :pm_package_id, name: 'index_pm_package_versions_on_pm_package_id' - end - - create_table :pm_package_version_licenses, primary_key: [:pm_package_version_id, :pm_license_id] do |t| - t.references :pm_package_version, - index: false, - null: false, - foreign_key: { - to_table: :pm_package_versions, - column: :pm_package_version_id, - name: 'fk_rails_30ddb7f837', - on_delete: :cascade - } - t.references :pm_license, - index: false, - null: false, - foreign_key: { name: 'fk_rails_7520ea026d', on_delete: :cascade } - t.timestamps_with_timezone null: false - t.index :pm_license_id, name: 'index_pm_package_version_licenses_on_pm_license_id' - t.index :pm_package_version_id, name: 'index_pm_package_version_licenses_on_pm_package_version_id' - end - end -end |