【发布时间】:2012-04-04 08:29:03
【问题描述】:
是否可以通过配置全局禁用 Rails 3.2 中新的解释功能?我正在使用 activerecord-sqlserver-adapter 3.2.1,gem 的解释(显示计划)部分似乎存在一些错误。
【问题讨论】:
标签: sql ruby-on-rails activerecord sql-execution-plan
是否可以通过配置全局禁用 Rails 3.2 中新的解释功能?我正在使用 activerecord-sqlserver-adapter 3.2.1,gem 的解释(显示计划)部分似乎存在一些错误。
【问题讨论】:
标签: sql ruby-on-rails activerecord sql-execution-plan
您可以通过在 config/environments/development.rb
中设置config.active_record.auto_explain_threshold_in_seconds = nil 来禁用自动解释
【讨论】:
引用http://weblog.rubyonrails.org/2011/12/6/what-s-new-in-edge-rails-explain/
获得新应用
config.active_record.auto_explain_threshold_in_seconds = 0.5在
config/environments/development.rb。 Active Record 监控查询,如果查询超过该阈值,他们的查询计划将使用警告记录。[...]
在测试和生产环境中默认阈值为
nil,这意味着该功能被禁用。
所以就设置
config.active_record.auto_explain_threshold_in_seconds = nil
【讨论】:
您应该注意到 config.auto_explain_threshold_in_seconds 在 Rails 4.0 和 4.1 中已被完全删除。在 4.1 中它会抛出一个完整的错误。
见https://github.com/rails/rails/pull/9400/files
如果您升级,请将该行注释掉。
【讨论】: