Class: Gruf::Interceptors::ActiveRecord::ConnectionReset

Inherits:
ServerInterceptor show all
Defined in:
lib/gruf/interceptors/active_record/connection_reset.rb

Overview

Resets the ActiveRecord connection to maintain accurate connected state in the thread pool

Instance Attribute Summary

Attributes inherited from Base

#error, #options, #request

Instance Method Summary collapse

Methods included from Errors::Helpers

#fail!

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Gruf::Interceptors::Base

Instance Method Details

#callObject

Reset any ActiveRecord connections after a gRPC service is called. Because of the way gRPC manages its connection pool, we need to ensure that this is done properly



29
30
31
32
33
# File 'lib/gruf/interceptors/active_record/connection_reset.rb', line 29

def call
  yield
ensure
  target_classes.each { |klass| klass.connection_handler.clear_active_connections! } if enabled?
end