class method
self.new
Ruby on Rails 4.2.9
Since v2.2.3Signature
self.new(connection, logger, connection_parameters, config)
Initializes and connects a PostgreSQL adapter.
Parameters
-
connectionreq -
loggerreq -
connection_parametersreq -
configreq
Source
# File activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb, line 226
def initialize(connection, logger, connection_parameters, config)
super(connection, logger)
@visitor = Arel::Visitors::PostgreSQL.new self
if self.class.type_cast_config_to_boolean(config.fetch(:prepared_statements) { true })
@prepared_statements = true
else
@prepared_statements = false
end
@connection_parameters, @config = connection_parameters, config
# @local_tz is initialized as nil to avoid warnings when connect tries to use it
@local_tz = nil
@table_alias_length = nil
connect
@statements = StatementPool.new @connection,
self.class.type_cast_config_to_integer(config.fetch(:statement_limit) { 1000 })
if postgresql_version < 80200
raise "Your version of PostgreSQL (#{postgresql_version}) is too old, please upgrade!"
end
@type_map = Type::HashLookupTypeMap.new
initialize_type_map(type_map)
@local_tz = execute('SHOW TIME ZONE', 'SCHEMA').first["TimeZone"]
@use_insert_returning = @config.key?(:insert_returning) ? self.class.type_cast_config_to_boolean(@config[:insert_returning]) : true
end
Defined in activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb line 226
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::ConnectionAdapters::PostgreSQLAdapter