9427: Add limits for connections, subscriptions, queued notifications, and
[arvados.git] / services / api / config / initializers / eventbus.rb
index ea1c2103853d31f04aaf3a94826a7ed8a0156930..7c452c33dd23bbd30c0c7dc3446531b7b633fd72 100644 (file)
@@ -13,6 +13,19 @@ Server::Application.configure do
       :websocket_only => (ENV['ARVADOS_WEBSOCKETS'] == "ws-only")
     }
     Rails.logger.info "Websockets #{ENV['ARVADOS_WEBSOCKETS']}, running at /websocket"
+
+    Rails.application.config.after_initialize do
+      ActiveRecord::Base.connection_pool.disconnect!
+
+      ActiveSupport.on_load(:active_record) do
+        config = ActiveRecord::Base.configurations[Rails.env] ||
+                 Rails.application.config.database_configuration[Rails.env]
+        config['pool'] = Rails.application.config.websocket_db_pool
+        ActiveRecord::Base.establish_connection(config)
+        Rails.logger.info "Database connection pool size #{Rails.application.config.websocket_db_pool}"
+      end
+    end
+
   else
     Rails.logger.info "Websockets disabled"
   end