aboutsummaryrefslogtreecommitdiffstats
path: root/lib/action_cable/server/worker.rb
diff options
context:
space:
mode:
authorPratik Naik <pratiknaik@gmail.com>2015-10-12 12:33:48 -0500
committerPratik Naik <pratiknaik@gmail.com>2015-10-12 12:33:48 -0500
commitd222f7de572f28fc2fa185e9f21cac6f7e6c84f0 (patch)
treebc3b9edb6e85119f172c1367fd96826367b1948d /lib/action_cable/server/worker.rb
parentaa3c1154edfacecbbf676af4d8728d8674d97cf4 (diff)
downloadrails-d222f7de572f28fc2fa185e9f21cac6f7e6c84f0.tar.gz
rails-d222f7de572f28fc2fa185e9f21cac6f7e6c84f0.tar.bz2
rails-d222f7de572f28fc2fa185e9f21cac6f7e6c84f0.zip
Make sure active record queries are logged with the current connection tags
Diffstat (limited to 'lib/action_cable/server/worker.rb')
-rw-r--r--lib/action_cable/server/worker.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/action_cable/server/worker.rb b/lib/action_cable/server/worker.rb
index d7823ecf93..91496775b8 100644
--- a/lib/action_cable/server/worker.rb
+++ b/lib/action_cable/server/worker.rb
@@ -5,10 +5,13 @@ module ActionCable
include ActiveSupport::Callbacks
include Celluloid
+ attr_reader :connection
define_callbacks :work
- include ClearDatabaseConnections
+ include ActiveRecordConnectionManagement
def invoke(receiver, method, *args)
+ @connection = receiver
+
run_callbacks :work do
receiver.send method, *args
end
@@ -20,6 +23,8 @@ module ActionCable
end
def run_periodic_timer(channel, callback)
+ @connection = channel.connection
+
run_callbacks :work do
callback.respond_to?(:call) ? channel.instance_exec(&callback) : channel.send(callback)
end