Postgres module

start_managed

procedureextensionexperimentalsince 0.31.0Source

Makes sure the binaries are there, creates the cluster if needed, and starts a server on it, or reuses one already running on the same data folder (found through postmaster.pid). The returned config connects as postgres.

The cluster uses fsync = off, synchronous_commit = off and full_page_writes = off: it is for throwaway data and loses it on a crash. Two processes starting the same data folder take turns on a lock folder next to it (<data_dir>.lock): the second waits for the first, then finds the server running and reuses it. A lock whose owner has died is taken over.

start_managed :: (
    settings: Managed_Settings
) -> (Managed_Server, error: string)

Parameters

Returns

error: string

See also