module Sequel::Postgres::StatementCache::AdapterMethods

Constants

DML_RE

A regular expression for the types of queries to cache. Any queries not matching this regular expression are not cached.

Attributes

statement_cache[R]

The StatementCache instance for this connection. Note that each connection has a separate StatementCache, because prepared statements are connection-specific.

Public Class Methods

extended(c) click to toggle source

Set the #statement_cache for the connection, using the database's :statement_cache_opts option.

# File lib/sequel/extensions/pg_statement_cache.rb, line 230
def self.extended(c)
  c.instance_variable_set(:@statement_cache, StatementCache.new(c.sequel_db.opts[:statement_cache_opts] || {}){|name| c.deallocate(name)})
end

Public Instance Methods

deallocate(name) click to toggle source

Deallocate on the server the prepared statement with the given name.

# File lib/sequel/extensions/pg_statement_cache.rb, line 241
def deallocate(name)
  begin
    execute("DEALLOCATE #{name}")
  rescue PGError
    # table probably got removed, just ignore it
  end
end
sequel_db() click to toggle source

pg seems to already use the db method (but not the @db instance variable), so use the #sequel_db method to access the related Sequel::Database object.

# File lib/sequel/extensions/pg_statement_cache.rb, line 236
def sequel_db
  @db
end