From fa3c4ad28b3c0d5690fbc4618da7a7a4ba6f684f Mon Sep 17 00:00:00 2001 From: Daniel Waterworth Date: Thu, 11 Nov 2021 11:12:25 -0600 Subject: [PATCH] DEV: Deprecate message bus site settings (#14465) It makes much more sense for these to be GlobalSettings, since, in multisite clusters, only the default site's settings would be respected. Co-authored-by: David Taylor --- config/discourse_defaults.conf | 6 ++++++ config/initializers/004-message_bus.rb | 12 ++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/config/discourse_defaults.conf b/config/discourse_defaults.conf index eeb7412fb7..f0d34270d0 100644 --- a/config/discourse_defaults.conf +++ b/config/discourse_defaults.conf @@ -339,3 +339,9 @@ cluster_name = # The YAML file used to configure multisite clusters multisite_config_path = config/multisite.yml + +# If false, only short (regular) polling will be attempted +enable_long_polling = + +# Length of time to hold open a long polling connection in milliseconds +long_polling_interval = diff --git a/config/initializers/004-message_bus.rb b/config/initializers/004-message_bus.rb index fcc62b3f4e..f560ad2a32 100644 --- a/config/initializers/004-message_bus.rb +++ b/config/initializers/004-message_bus.rb @@ -119,8 +119,16 @@ else end MessageBus.reliable_pub_sub.max_backlog_size = GlobalSetting.message_bus_max_backlog_size -MessageBus.long_polling_enabled = SiteSetting.enable_long_polling -MessageBus.long_polling_interval = SiteSetting.long_polling_interval +if SiteSetting.table_exists? && SiteSetting.where(name: ['enable_long_polling', 'long_polling_interval']).exists? + Discourse.deprecate("enable_long_polling/long_polling_interval have switched from site settings to global settings. Remove the override from the Site Settings UI, and use a config file or environment variables to set the global settings.", drop_from: '2.9.0') + + MessageBus.long_polling_enabled = SiteSetting.enable_long_polling + MessageBus.long_polling_interval = SiteSetting.long_polling_interval +else + MessageBus.long_polling_enabled = GlobalSetting.enable_long_polling.nil? ? true : GlobalSetting.enable_long_polling + MessageBus.long_polling_interval = GlobalSetting.long_polling_interval || 25000 +end + MessageBus.cache_assets = !Rails.env.development? MessageBus.enable_diagnostics