instance method
cache_sql
Ruby on Rails 4.0.13
Since v2.2.3 PrivateSignature
cache_sql(sql, binds)
No documentation comment.
Parameters
-
sqlreq -
bindsreq
Source
# File activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb, line 70
def cache_sql(sql, binds)
result =
if @query_cache[sql].key?(binds)
ActiveSupport::Notifications.instrument("sql.active_record",
:sql => sql, :binds => binds, :name => "CACHE", :connection_id => object_id)
@query_cache[sql][binds]
else
@query_cache[sql][binds] = yield
end
# FIXME: we should guarantee that all cached items are Result
# objects. Then we can avoid this conditional
if ActiveRecord::Result === result
result.dup
else
result.collect { |row| row.dup }
end
end
Defined in activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb line 70
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::ConnectionAdapters::QueryCache