Electric.Connection.Manager.Pool (electric v1.2.4)

View Source

A connection pool for managing multiple connections to a PostgreSQL database.

Summary

Types

connection_status()

@type connection_status() :: :starting | :connected | :disconnected

pool_status()

@type pool_status() :: :starting | :ready | :repopulating

t()

@type t() :: %Electric.Connection.Manager.Pool{
  connection_manager: GenServer.server(),
  connection_pids: %{required(pid()) => connection_status()},
  host: term(),
  last_connection_error: Electric.DbConnectionError.t() | nil,
  pool_mod: term(),
  pool_pid: pid(),
  pool_ref: reference(),
  pool_size: non_neg_integer(),
  role: :admin | :snapshot,
  stack_id: Electric.stack_id(),
  status: pool_status()
}

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

configure_pool_conn(opts, supervisor_pid, stack_id)

name(opts)

name(stack_id, role)

start_link(opts)