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:
authorBob Van Landuyt <bob@vanlanduyt.co>2017-11-24 17:52:15 +0300
committerBob Van Landuyt <bob@vanlanduyt.co>2017-11-29 14:12:55 +0300
commite03d4a2096f2d32dbb51d427ae99dfb6d49e6a00 (patch)
tree106180f1d7803c7d600ec0ac23b580cb0c87b626 /db/post_migrate
parent4c4109e1b942dae17f3a716f51a0da15cd335043 (diff)
Reschedule the migration to populate fork networks
Rescheduling will make sure the fork networks with a deleted source project are created.
Diffstat (limited to 'db/post_migrate')
-rw-r--r--db/post_migrate/20171124150326_reschedule_fork_network_creation.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/db/post_migrate/20171124150326_reschedule_fork_network_creation.rb b/db/post_migrate/20171124150326_reschedule_fork_network_creation.rb
new file mode 100644
index 00000000000..05430efe1f6
--- /dev/null
+++ b/db/post_migrate/20171124150326_reschedule_fork_network_creation.rb
@@ -0,0 +1,27 @@
+class RescheduleForkNetworkCreation < ActiveRecord::Migration
+ include Gitlab::Database::MigrationHelpers
+
+ DOWNTIME = false
+
+ MIGRATION = 'PopulateForkNetworksRange'.freeze
+ BATCH_SIZE = 100
+ DELAY_INTERVAL = 15.seconds
+
+ disable_ddl_transaction!
+
+ class ForkedProjectLink < ActiveRecord::Base
+ include EachBatch
+
+ self.table_name = 'forked_project_links'
+ end
+
+ def up
+ say 'Populating the `fork_networks` based on existing `forked_project_links`'
+
+ queue_background_migration_jobs_by_range_at_intervals(ForkedProjectLink, MIGRATION, DELAY_INTERVAL, batch_size: BATCH_SIZE)
+ end
+
+ def down
+ # nothing
+ end
+end