Method: ActiveRecord::ConnectionAdapters::TrilogyAdapter#initialize

Defined in:
activerecord/lib/active_record/connection_adapters/trilogy_adapter.rb

#initialize(config) ⇒ TrilogyAdapter

Returns a new instance of TrilogyAdapter.



75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'activerecord/lib/active_record/connection_adapters/trilogy_adapter.rb', line 75

def initialize(config, *)
  config = config.dup

  # Trilogy ignores `socket` if `host is set. We want the opposite to allow
  # configuring UNIX domain sockets via `DATABASE_URL`.
  config.delete(:host) if config[:socket]

  # Set FOUND_ROWS capability on the connection so UPDATE queries returns number of rows
  # matched rather than number of rows updated.
  config[:found_rows] = true

  if config[:prepared_statements]
    raise ArgumentError, "Trilogy currently doesn't support prepared statements. Remove `prepared_statements: true` from your database configuration."
  end

  super
end