method
handle_warnings
v7.2.3 -
Show latest stable
- Class:
ActiveRecord::ConnectionAdapters::AbstractMysqlAdapter
handle_warnings(sql)private
No documentation available.
# File activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb, line 781
def handle_warnings(sql)
return if ActiveRecord.db_warnings_action.nil? || @raw_connection.warning_count == 0
@affected_rows_before_warnings = @raw_connection.affected_rows
warning_count = @raw_connection.warning_count
result = @raw_connection.query("SHOW WARNINGS")
result = [
["Warning", nil, "Query had warning_count=#{warning_count} but âSHOW WARNINGSâ did not return the warnings. Check MySQL logs or database configuration."],
] if result.count == 0
result.each do |level, code, message|
warning = SQLWarning.new(message, code, level, sql, @pool)
next if warning_ignored?(warning)
ActiveRecord.db_warnings_action.call(warning)
end
end