Skip to content
Snippets Groups Projects
Commit a1881520 authored by Alexandru Croitor's avatar Alexandru Croitor :three:
Browse files

Merge branch '342531_log_query_rewrites' into 'master'

Log `UnnestedInFilters#rewrite` calls to make it easier to debug

See merge request !91818
parents cbcf5ea8 20bd92f4
No related branches found
No related tags found
1 merge request!91818Log `UnnestedInFilters#rewrite` calls to make it easier to debug
Pipeline #581668809 passed
......@@ -105,6 +105,8 @@ def initialize(relation)
# LIMIT 20
#
def rewrite
log_rewrite
model.from(from)
.limit(limit_value)
.order(order_values)
......@@ -125,6 +127,10 @@ def rewrite?
delegate :model, :order_values, :limit_value, :where_values_hash, to: :relation, private: true
def log_rewrite
::Gitlab::AppLogger.info(message: 'Query is being rewritten by `UnnestedInFilters`', model: model.name)
end
def from
[value_tables.map(&:to_sql) + [lateral]].join(', ')
end
......
......@@ -138,5 +138,20 @@
end
end
end
describe 'logging' do
subject(:load_reload) { rewriter.rewrite }
before do
allow(::Gitlab::AppLogger).to receive(:info)
end
it 'logs the call' do
load_reload
expect(::Gitlab::AppLogger)
.to have_received(:info).with(message: 'Query is being rewritten by `UnnestedInFilters`', model: 'User')
end
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment