Reduce object allocations during activerecord.sql logging

This commit is contained in:
Akira Matsuda 2019-08-18 22:46:01 +09:00
parent c487a82773
commit 934b104fb0

@ -32,11 +32,15 @@ def sql(event)
sql = payload[:sql]
binds = nil
unless (payload[:binds] || []).empty?
if payload[:binds]&.any?
casted_params = type_casted_binds(payload[:type_casted_binds])
binds = " " + payload[:binds].zip(casted_params).map { |attr, value|
render_bind(attr, value)
}.inspect
binds = []
payload[:binds].each_with_index do |attr, i|
binds << render_bind(attr, casted_params[i])
end
binds = binds.inspect
binds.prepend(" ")
end
name = colorize_payload_name(name, payload[:name])