module ActiveRecord::QueryCache::ClassMethods
def cache(&block)
Enable the query cache within the block if Active Record is configured.
def cache(&block) if connected? || !configurations.empty? pool = connection_pool was_enabled = pool.query_cache_enabled begin pool.enable_query_cache(&block) ensure pool.clear_query_cache unless was_enabled end else yield end end
def uncached(dirties: true, &block)
Set dirties: false to prevent query caches on all connections from being cleared by write operations.
If it's not, it will execute the given block.
Disable the query cache within the block if Active Record is configured.
def uncached(dirties: true, &block) if connected? || !configurations.empty? connection_pool.disable_query_cache(dirties: dirties, &block) else yield end end