Skip to content

Commit

Permalink
Allow models to load when the database is offline
Browse files Browse the repository at this point in the history
It used to be necessary to stop ActiveRecord loading because
it would immediately try and connect the database but with the
introduction of switchable database connections it now only connects
when a model is used for the first time.

Fixes openstreetmap#3858
  • Loading branch information
tomhughes committed Jan 5, 2023
1 parent 52078b5 commit 4a5d509
Showing 1 changed file with 1 addition and 16 deletions.
17 changes: 1 addition & 16 deletions config/application.rb
@@ -1,18 +1,6 @@
require_relative "boot"

if ENV.fetch("OPENSTREETMAP_STATUS", nil) == "database_offline"
require "active_model/railtie"
require "active_job/railtie"
require "active_storage/engine"
require "action_controller/railtie"
require "action_mailer/railtie"
require "action_view/railtie"
require "action_cable/engine"
require "sprockets/railtie"
require "rails/test_unit/railtie"
else
require "rails/all"
end
require "rails/all"

# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Expand Down Expand Up @@ -40,9 +28,6 @@ class Application < Rails::Application
# like if you have constraints or database-specific column types
config.active_record.schema_format = :sql unless Settings.status == "database_offline"

# Don't eager load models when the database is offline
config.paths["app/models"].skip_eager_load! if Settings.status == "database_offline"

# Use memcached for caching if required
config.cache_store = :mem_cache_store, Settings.memcache_servers, { :namespace => "rails:cache" } if Settings.key?(:memcache_servers)

Expand Down

0 comments on commit 4a5d509

Please sign in to comment.