mirror of
https://github.com/discourse/discourse.git
synced 2025-06-01 05:53:52 +08:00
DEV: Stablize the multisite tests.
SiteSettingExtension triggers message bus which re-establishes a DB connection in `SiteSettingExtension#process_message`. That happens concurrently and a test that requires a connection to the db will fail when the reconnection is happening.
This commit is contained in:
@ -301,22 +301,22 @@ module SiteSettingExtension
|
||||
|
||||
unless @subscribed
|
||||
MessageBus.subscribe("/site_settings") do |message|
|
||||
process_message(message)
|
||||
if message.data["process"] != process_id
|
||||
process_message(message)
|
||||
end
|
||||
end
|
||||
|
||||
@subscribed = true
|
||||
end
|
||||
end
|
||||
|
||||
def process_message(message)
|
||||
data = message.data
|
||||
if data["process"] != process_id
|
||||
begin
|
||||
@last_message_processed = message.global_id
|
||||
MessageBus.on_connect.call(message.site_id)
|
||||
refresh!
|
||||
ensure
|
||||
MessageBus.on_disconnect.call(message.site_id)
|
||||
end
|
||||
begin
|
||||
@last_message_processed = message.global_id
|
||||
MessageBus.on_connect.call(message.site_id)
|
||||
refresh!
|
||||
ensure
|
||||
MessageBus.on_disconnect.call(message.site_id)
|
||||
end
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user