aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/explain_subscriber.rb
diff options
context:
space:
mode:
authorkennyj <kennyj@gmail.com>2012-09-16 10:43:30 +0900
committerkennyj <kennyj@gmail.com>2012-09-17 00:22:34 +0900
commit5bb056d268c9fc8c08c04ef04aef0c499b08a12c (patch)
treedcf5a5ca4516a996bb5b78bd4d79b66ba3aeae9e /activerecord/lib/active_record/explain_subscriber.rb
parent761bc751d31c22e2c2fdae2b4cdd435b68b6d783 (diff)
downloadrails-5bb056d268c9fc8c08c04ef04aef0c499b08a12c.tar.gz
rails-5bb056d268c9fc8c08c04ef04aef0c499b08a12c.tar.bz2
rails-5bb056d268c9fc8c08c04ef04aef0c499b08a12c.zip
Don't explain except normal CRUD sql.
Diffstat (limited to 'activerecord/lib/active_record/explain_subscriber.rb')
-rw-r--r--activerecord/lib/active_record/explain_subscriber.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/explain_subscriber.rb b/activerecord/lib/active_record/explain_subscriber.rb
index d5ba343b4c..0f927496fb 100644
--- a/activerecord/lib/active_record/explain_subscriber.rb
+++ b/activerecord/lib/active_record/explain_subscriber.rb
@@ -18,8 +18,9 @@ module ActiveRecord
# On the other hand, we want to monitor the performance of our real database
# queries, not the performance of the access to the query cache.
IGNORED_PAYLOADS = %w(SCHEMA EXPLAIN CACHE)
+ EXPLAINED_SQLS = /\A\s*(select|update|delete|insert)/i
def ignore_payload?(payload)
- payload[:exception] || IGNORED_PAYLOADS.include?(payload[:name])
+ payload[:exception] || IGNORED_PAYLOADS.include?(payload[:name]) || payload[:sql] !~ EXPLAINED_SQLS
end
ActiveSupport::Notifications.subscribe("sql.active_record", new)