module ActiveRecord::Relation::RecordFetchWarning
def exec_queries
efficiently using the ActiveRecord::Batches methods.
In most cases, fetching large number of records can be performed
return a large number of records, which could cause memory bloat.
a warning is logged. This allows for the detection of queries that
greater than the value of +warn_on_records_fetched_greater_than+,
set to an integer, if the number of records a query returns is
+config.active_record.warn_on_records_fetched_greater_than+ is
When this module is prepended to ActiveRecord::Relation and
def exec_queries QueryRegistry.reset super.tap do |records| if logger && ActiveRecord.warn_on_records_fetched_greater_than if records.length > ActiveRecord.warn_on_records_fetched_greater_than logger.warn "Query fetched #{records.size} #{@klass} records: #{QueryRegistry.queries.join(";")}" end end end end