method
translate_exception
rails latest stable - Class:
ActiveRecord::ConnectionAdapters::TrilogyAdapter
translate_exception(exception, message:, sql:, binds:)private
No documentation available.
# File activerecord/lib/active_record/connection_adapters/trilogy_adapter.rb, line 222
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