【发布时间】:2014-12-05 08:29:37
【问题描述】:
我有以下初始化程序。
/config/initializers/database_connection.rb:
Rails.application.config.after_initialize do
ActiveRecord::Base.connection_pool.disconnect!
ActiveSupport.on_load(:active_record) do
config = Rails.application.config.database_configuration[Rails.env]
config['reaping_frequency'] = (ENV['DB_REAP_FREQ'] || 5).to_i # seconds
config['pool'] = (ENV['DB_POOL'] || 15).to_i
config['checkout_timeout'] = (ENV['DB_CHECKOUT_TIMEOUT'] || 25).to_i # seconds
ActiveRecord::Base.establish_connection(config)
end
end
我仍然收到以下错误:
ActiveRecord::ConnectionTimeoutError - could not obtain a database connection within 5.000 seconds (waited 6.940 seconds)
增加的超时时间(25 秒)被忽略,超时时间在 5 秒后仍然发生。
我应该如何设置 checkout_timeout?
【问题讨论】:
标签: ruby-on-rails activerecord timeout