method
select_all
v7.1.3.4 -
Show latest stable
- Class:
ActiveRecord::ConnectionAdapters::QueryCache
select_all(arel, name = nil, binds = [], preparable: nil, async: false)public
No documentation available.
# File activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb, line 100
def select_all(arel, name = nil, binds = [], preparable: nil, async: false) # :nodoc:
arel = arel_from_relation(arel)
# If arel is locked this is a SELECT ... FOR UPDATE or somesuch.
# Such queries should not be cached.
if @query_cache_enabled && !(arel.respond_to?(:locked) && arel.locked)
sql, binds, preparable = to_sql_and_binds(arel, binds, preparable)
if async
result = lookup_sql_cache(sql, name, binds) || super(sql, name, binds, preparable: preparable, async: async)
FutureResult::Complete.new(result)
else
cache_sql(sql, name, binds) { super(sql, name, binds, preparable: preparable, async: async) }
end
else
super
end
end