summaryrefslogtreecommitdiff
path: root/db/migrate
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-05-09 12:15:13 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2023-05-09 12:15:13 +0000
commit0b4adad74b76b34855e9a6d943f9b9188c3914fa (patch)
tree1084ffd8336bc8e9af6f7042a093bf78e0852ac3 /db/migrate
parentece36a21699c2a218b8bd14b22bea47d22218354 (diff)
downloadgitlab-ce-0b4adad74b76b34855e9a6d943f9b9188c3914fa.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/20230403093349_ensure_packages_npm_metadata_caches_is_empty.rb13
-rw-r--r--db/migrate/20230405071033_add_object_storage_key_to_packages_npm_metadata_caches.rb25
-rw-r--r--db/migrate/20230503191056_add_text_limit_to_packages_npm_metadata_caches_object_storage_key.rb13
-rw-r--r--db/migrate/20230509072635_drop_unused_sequence_by_recreating_vsa_table.rb24
4 files changed, 75 insertions, 0 deletions
diff --git a/db/migrate/20230403093349_ensure_packages_npm_metadata_caches_is_empty.rb b/db/migrate/20230403093349_ensure_packages_npm_metadata_caches_is_empty.rb
new file mode 100644
index 00000000000..baeb368fda1
--- /dev/null
+++ b/db/migrate/20230403093349_ensure_packages_npm_metadata_caches_is_empty.rb
@@ -0,0 +1,13 @@
+# frozen_string_literal: true
+
+class EnsurePackagesNpmMetadataCachesIsEmpty < Gitlab::Database::Migration[2.1]
+ disable_ddl_transaction!
+
+ def up
+ truncate_tables!('packages_npm_metadata_caches')
+ end
+
+ def down
+ # no-op
+ end
+end
diff --git a/db/migrate/20230405071033_add_object_storage_key_to_packages_npm_metadata_caches.rb b/db/migrate/20230405071033_add_object_storage_key_to_packages_npm_metadata_caches.rb
new file mode 100644
index 00000000000..a4c0f01ab2a
--- /dev/null
+++ b/db/migrate/20230405071033_add_object_storage_key_to_packages_npm_metadata_caches.rb
@@ -0,0 +1,25 @@
+# frozen_string_literal: true
+
+class AddObjectStorageKeyToPackagesNpmMetadataCaches < Gitlab::Database::Migration[2.1]
+ disable_ddl_transaction!
+
+ INDEX_NAME = 'index_packages_npm_metadata_caches_on_object_storage_key'
+
+ # rubocop:disable Migration/AddLimitToTextColumns
+ # limit is added in 20230503191056_add_text_limit_to_packages_npm_metadata_caches_object_storage_key
+ def up
+ unless column_exists?(:packages_npm_metadata_caches, :object_storage_key)
+ # The existing table is empty.
+ # rubocop:disable Rails/NotNullColumn
+ add_column :packages_npm_metadata_caches, :object_storage_key, :text, null: false
+ # rubocop:enable Rails/NotNullColumn
+ end
+
+ add_concurrent_index :packages_npm_metadata_caches, :object_storage_key, unique: true, name: INDEX_NAME
+ end
+ # rubocop:enable Migration/AddLimitToTextColumns
+
+ def down
+ remove_column :packages_npm_metadata_caches, :object_storage_key
+ end
+end
diff --git a/db/migrate/20230503191056_add_text_limit_to_packages_npm_metadata_caches_object_storage_key.rb b/db/migrate/20230503191056_add_text_limit_to_packages_npm_metadata_caches_object_storage_key.rb
new file mode 100644
index 00000000000..b2759a30809
--- /dev/null
+++ b/db/migrate/20230503191056_add_text_limit_to_packages_npm_metadata_caches_object_storage_key.rb
@@ -0,0 +1,13 @@
+# frozen_string_literal: true
+
+class AddTextLimitToPackagesNpmMetadataCachesObjectStorageKey < Gitlab::Database::Migration[2.1]
+ disable_ddl_transaction!
+
+ def up
+ add_text_limit :packages_npm_metadata_caches, :object_storage_key, 255
+ end
+
+ def down
+ remove_text_limit :packages_npm_metadata_caches, :object_storage_key
+ end
+end
diff --git a/db/migrate/20230509072635_drop_unused_sequence_by_recreating_vsa_table.rb b/db/migrate/20230509072635_drop_unused_sequence_by_recreating_vsa_table.rb
new file mode 100644
index 00000000000..d1abc9bbda7
--- /dev/null
+++ b/db/migrate/20230509072635_drop_unused_sequence_by_recreating_vsa_table.rb
@@ -0,0 +1,24 @@
+# frozen_string_literal: true
+
+class DropUnusedSequenceByRecreatingVsaTable < Gitlab::Database::Migration[2.1]
+ enable_lock_retries!
+
+ def up
+ # dropping is OK since we re-add the table in the same transaction
+ drop_table :value_stream_dashboard_aggregations, if_exists: true # rubocop: disable Migration/DropTable
+ create_table :value_stream_dashboard_aggregations, id: false do |t|
+ # Note: default: nil will prevent SEQUENCE creation
+ t.references :namespace, primary_key: true, null: false, index: false, foreign_key: { on_delete: :cascade },
+ default: nil
+ t.datetime_with_timezone :last_run_at
+ t.boolean :enabled, null: false, default: true
+
+ t.index [:last_run_at, :namespace_id], where: 'enabled IS TRUE',
+ name: 'index_on_value_stream_dashboard_aggregations_last_run_at_id'
+ end
+ end
+
+ def down
+ # no-op, we don't want to restore the sequence
+ end
+end