mirror of
https://github.com/discourse/discourse.git
synced 2025-06-10 05:23:44 +08:00
DEV: increase lock timeout for multisite migration (#14831)
- Increase lock timeout - given multisites may take a while to migrate - Ensure we do not check for status while db is migrating
This commit is contained in:
@ -114,7 +114,7 @@ task 'multisite:migrate' => ['db:load_config', 'environment', 'set_locale'] do |
|
|||||||
raise "Multisite migrate is only supported in production"
|
raise "Multisite migrate is only supported in production"
|
||||||
end
|
end
|
||||||
|
|
||||||
DistributedMutex.synchronize('db_migration', redis: Discourse.redis.without_namespace, validity: 300) do
|
DistributedMutex.synchronize('db_migration', redis: Discourse.redis.without_namespace, validity: 1200) do
|
||||||
# TODO: Switch to processes for concurrent migrations because Rails migration
|
# TODO: Switch to processes for concurrent migrations because Rails migration
|
||||||
# is not thread safe by default.
|
# is not thread safe by default.
|
||||||
concurrency = 1
|
concurrency = 1
|
||||||
@ -548,6 +548,7 @@ end
|
|||||||
|
|
||||||
desc 'Check that the DB can be accessed'
|
desc 'Check that the DB can be accessed'
|
||||||
task 'db:status:json' do
|
task 'db:status:json' do
|
||||||
|
DistributedMutex.synchronize('db_migration', redis: Discourse.redis.without_namespace, validity: 1200) do
|
||||||
begin
|
begin
|
||||||
Rake::Task['environment'].invoke
|
Rake::Task['environment'].invoke
|
||||||
DB.query('SELECT 1')
|
DB.query('SELECT 1')
|
||||||
@ -556,4 +557,5 @@ task 'db:status:json' do
|
|||||||
else
|
else
|
||||||
puts({ status: 'ok' }.to_json)
|
puts({ status: 'ok' }.to_json)
|
||||||
end
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
Reference in New Issue
Block a user