Disabling Rails SQL query caching globally

activerecord, ruby-on-rails, ruby-on-rails-3

Solution

In Rails 5 we can disable active record query cache using the given function as a middleware.

In application_controller.rb add the given code.

around_action :disable_query_cache

def disable_query_cache
    ActiveRecord::Base.uncached do
       yield
    end
end

Problem

Is there any way to turn off Rails' SQL query caching globally? Or, at the very least, not use it when i enter a transaction block? Also, does sql query caching only apply to controller actions, or also to rake tasks or background daemons that i write that include Rails and use my models?

Original source