8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/active_record/turntable/rack/query_cache.rb', line 8
def call(env)
enabled = ActiveRecord::Base.connection.query_cache_enabled
connection_id = ActiveRecord::Base.connection_id
klasses = ActiveRecord::Base.turntable_connections.values
klasses.each do |k|
k.connection.enable_query_cache!
end
response = @app.call(env)
response[2] = ::Rack::BodyProxy.new(response[2]) do
restore_query_cache_settings(connection_id, enabled)
end
response
rescue Exception => e
restore_query_cache_settings(connection_id, enabled)
raise e
end
|