Environment Variables¶
Epsio reads its configuration from environment variables at startup. This page lists the variables you can set to configure and manage an Epsio instance.
All variables can optionally be prefixed with EPSIO_ for explicit namespacing (for example, EPSIO_LOG_LEVEL is equivalent to LOG_LEVEL). When both are set, the EPSIO_-prefixed variable takes precedence.
How to set environment variables¶
Pass variables under spec.env of the Epsio custom resource (or env in values.yaml when using Helm):
Source Database (PostgreSQL)¶
| Variable | Description | Default |
|---|---|---|
LOGICAL_REPLICATION_PLUGIN | Logical decoding plugin to use. Either pgoutput or wal2json. | pgoutput |
SLOT_NAME | Override the default replication slot name prefix used by Epsio. | epsio_slot_<INSTANCE_ID> |
<SOURCE_NAME>_SLOT_NAME | Per-source override of the replication slot name. The variable name is the source name in uppercase with hyphens replaced by underscores, suffixed with _SLOT_NAME (e.g. for a source my-db, set MY_DB_SLOT_NAME). Falls back to SLOT_NAME when unset. | inherits SLOT_NAME |
MAX_DATA_CONNECTIONS_FOR_PG_POOL | Maximum number of data connections per source PostgreSQL pool. | 32 |
MAX_DATA_CONNECTIONS_FOR_PG_POOL_<source_name> | Per-source override of the maximum data connections for the PostgreSQL pool. The variable name is MAX_DATA_CONNECTIONS_FOR_PG_POOL_ followed by the source name (e.g. for a source otherpgdb, set MAX_DATA_CONNECTIONS_FOR_PG_POOL_otherpgdb). Falls back to MAX_DATA_CONNECTIONS_FOR_PG_POOL when unset. | inherits MAX_DATA_CONNECTIONS_FOR_PG_POOL |
Source Database (MySQL)¶
| Variable | Description | Default |
|---|---|---|
SQL_LOCK_TIMEOUT | Timeout (seconds) Epsio waits when acquiring table locks during initial population and table validation. When this is exceeded, Epsio raises a Timed out trying to get lock on the following tables error. Increase this if you have long-running transactions on the source that hold conflicting locks. | 5 |
Behavior Flags¶
| Variable | Description | Default |
|---|---|---|
PAUSE_POPULATION | Pause initial view population (0 / 1). Useful for staged rollouts and incident mitigation. | 0 |
SKIP_POPULATION_ROWS_COUNT | Skip the row-count query that runs alongside initial population (0 / 1). Set to 1 to avoid an extra full-table scan on very large source tables; population progress in dashboard will not include total row counts. | 0 |