Module | Sequel::Postgres::StatementCache::DatabaseMethods |
In: |
lib/sequel/extensions/pg_statement_cache.rb
|
Setup the after_connect proc for the connection pool to make sure the connection object is extended with the appropriate module. This disconnects any existing connections to ensure that all connections in the pool have been extended appropriately.
# File lib/sequel/extensions/pg_statement_cache.rb, line 277 277: def self.extended(db) 278: # Respect existing after_connect proc if one is present 279: pr = db.opts[:after_connect] 280: 281: # Set the after_connect proc to extend the adapter with 282: # the statement cache support. 283: db.pool.after_connect = db.opts[:after_connect] = proc do |c| 284: pr.call(c) if pr 285: c.extend(AdapterMethods) 286: end 287: 288: # Disconnect to make sure all connections get set up with 289: # statement cache. 290: db.disconnect 291: end
Clear statement caches for all connections when altering tables.
# File lib/sequel/extensions/pg_statement_cache.rb, line 294 294: def alter_table(*) 295: clear_statement_caches 296: super 297: end