Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-06-20 13:43:29 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-06-20 13:43:29 +0300
commit3b1af5cc7ed2666ff18b718ce5d30fa5a2756674 (patch)
tree3bc4a40e0ee51ec27eabf917c537033c0c5b14d4 /db/post_migrate/20230426085615_queue_backfill_resource_link_events.rb
parent9bba14be3f2c211bf79e15769cd9b77bc73a13bc (diff)
Add latest changes from gitlab-org/gitlab@16-1-stable-eev16.1.0-rc42
Diffstat (limited to 'db/post_migrate/20230426085615_queue_backfill_resource_link_events.rb')
-rw-r--r--db/post_migrate/20230426085615_queue_backfill_resource_link_events.rb43
1 files changed, 43 insertions, 0 deletions
diff --git a/db/post_migrate/20230426085615_queue_backfill_resource_link_events.rb b/db/post_migrate/20230426085615_queue_backfill_resource_link_events.rb
new file mode 100644
index 00000000000..fe4ea099d2e
--- /dev/null
+++ b/db/post_migrate/20230426085615_queue_backfill_resource_link_events.rb
@@ -0,0 +1,43 @@
+# frozen_string_literal: true
+
+class QueueBackfillResourceLinkEvents < Gitlab::Database::Migration[2.1]
+ MIGRATION = "BackfillResourceLinkEvents"
+ DELAY_INTERVAL = 2.minutes
+ BATCH_SIZE = 5000
+ SUB_BATCH_SIZE = 10
+
+ restrict_gitlab_migration gitlab_schema: :gitlab_main
+
+ class SystemNoteMetadata < MigrationRecord
+ self.table_name = 'system_note_metadata'
+
+ def self.batch_start_id
+ SystemNoteMetadata
+ .select(:id)
+ .where("action='relate_to_parent' OR action='unrelate_from_parent'")
+ .order(id: :asc)
+ .limit(1)
+ .first&.id
+ end
+ end
+
+ def up
+ batch_min_value = SystemNoteMetadata.batch_start_id
+
+ return unless batch_min_value
+
+ queue_batched_background_migration(
+ MIGRATION,
+ :system_note_metadata,
+ :id,
+ job_interval: DELAY_INTERVAL,
+ batch_size: BATCH_SIZE,
+ sub_batch_size: SUB_BATCH_SIZE,
+ batch_min_value: batch_min_value
+ )
+ end
+
+ def down
+ delete_batched_background_migration(MIGRATION, :system_note_metadata, :id, [])
+ end
+end