diff options
author | Xavier Noria <fxn@hashref.com> | 2013-05-10 08:05:54 -0700 |
---|---|---|
committer | Xavier Noria <fxn@hashref.com> | 2013-05-10 08:05:54 -0700 |
commit | 4fa860728fe2ed8f248e9f3e89f0a144b8f314c8 (patch) | |
tree | 1db73184fbd993810887808f2a88c2c27915d4cd | |
parent | 3589181122f1a70abc1acd8c6bf41b46e2be2f5a (diff) | |
parent | a33d320cf4b57fabd9c299b09c217ee3955ecc77 (diff) | |
download | rails-4fa860728fe2ed8f248e9f3e89f0a144b8f314c8.tar.gz rails-4fa860728fe2ed8f248e9f3e89f0a144b8f314c8.tar.bz2 rails-4fa860728fe2ed8f248e9f3e89f0a144b8f314c8.zip |
Merge pull request #10555 from dasch/dasch/3-2-stable
Don't try to EXPLAIN select_db calls
-rw-r--r-- | activerecord/lib/active_record/explain_subscriber.rb | 2 | ||||
-rw-r--r-- | activerecord/test/cases/explain_subscriber_test.rb | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/explain_subscriber.rb b/activerecord/lib/active_record/explain_subscriber.rb index 859c8edfc5..1d861a57db 100644 --- a/activerecord/lib/active_record/explain_subscriber.rb +++ b/activerecord/lib/active_record/explain_subscriber.rb @@ -15,7 +15,7 @@ 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 + EXPLAINED_SQLS = /\A\s*(select|update|delete|insert)\b/i def ignore_payload?(payload) payload[:exception] || IGNORED_PAYLOADS.include?(payload[:name]) || payload[:sql] !~ EXPLAINED_SQLS end diff --git a/activerecord/test/cases/explain_subscriber_test.rb b/activerecord/test/cases/explain_subscriber_test.rb index 7b852a625d..f929ddd79e 100644 --- a/activerecord/test/cases/explain_subscriber_test.rb +++ b/activerecord/test/cases/explain_subscriber_test.rb @@ -38,6 +38,13 @@ if ActiveRecord::Base.connection.supports_explain? end end + def test_collects_nothing_if_the_statement_is_only_partially_matched + with_queries([]) do |queries| + SUBSCRIBER.finish(:name => 'SQL', :sql => 'select_db yo_mama') + assert queries.empty? + end + end + def test_collects_nothing_if_unexplained_sqls with_queries([]) do |queries| SUBSCRIBER.call(:name => 'SQL', :sql => 'SHOW max_identifier_length') |