instance method translate_exception

Ruby on Rails 7.1.6

Since v7.1.6 Private

Available in: v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

translate_exception(exception, message:, sql:, binds:)

No documentation comment.

Parameters

exception req
message keyreq
sql keyreq
binds keyreq
Source
# File activerecord/lib/active_record/connection_adapters/trilogy_adapter.rb, line 218
        def translate_exception(exception, message:, sql:, binds:)
          if exception.is_a?(::Trilogy::TimeoutError) && !exception.error_code
            return ActiveRecord::AdapterTimeout.new(message, sql: sql, binds: binds, connection_pool: @pool)
          end
          error_code = exception.error_code if exception.respond_to?(:error_code)

          case error_code
          when ER_SERVER_SHUTDOWN
            return ConnectionFailed.new(message, connection_pool: @pool)
          end

          case exception
          when Errno::EPIPE, SocketError, IOError
            return ConnectionFailed.new(message, connection_pool: @pool)
          when ::Trilogy::Error
            if /Connection reset by peer|TRILOGY_CLOSED_CONNECTION|TRILOGY_INVALID_SEQUENCE_ID|TRILOGY_UNEXPECTED_PACKET/.match?(exception.message)
              return ConnectionFailed.new(message, connection_pool: @pool)
            end
          end

          super
        end

Defined in activerecord/lib/active_record/connection_adapters/trilogy_adapter.rb line 218 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveRecord::ConnectionAdapters::TrilogyAdapter

Type at least 2 characters to search.

↑↓ navigate · open · esc close