From 32d55b6a6c8d77b35437e0aefcdc43da3113f207 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20Barri=C3=A9?= Date: Wed, 21 Jun 2023 17:28:38 +0200 Subject: [PATCH] Don't cache ActiveSupport::Notifications.instrumenter in AbstractAdapter --- .../active_record/connection_adapters/abstract_adapter.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb b/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb index c930688972f59..04c304042e356 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb @@ -153,7 +153,7 @@ def initialize(config_or_deprecated_connection, deprecated_logger = nil, depreca end @owner = nil - @instrumenter = ActiveSupport::Notifications.instrumenter + @instrumenter = nil @pool = ActiveRecord::ConnectionAdapters::NullPool.new @idle_since = Process.clock_gettime(Process::CLOCK_MONOTONIC) @visitor = arel_visitor @@ -1126,7 +1126,8 @@ def translate_exception_class(e, sql, binds) end def log(sql, name = "SQL", binds = [], type_casted_binds = [], statement_name = nil, async: false, &block) # :doc: - @instrumenter.instrument( + instrumenter = @instrumenter || ActiveSupport::Notifications.instrumenter + instrumenter.instrument( "sql.active_record", sql: sql, name: name,