connections
Use the connections { ... } block to configure the SQL pool.
server "primary" {
url "postgresql://radiator:secret@db.example.com:5432/radiator";
connections {
max 25;
idle-timeout 5m;
min 2;
min-timeout 1s;
min-retry 250ms;
}
}
Parameters:
max: Maximum pool size. Default:10.idle-timeout: Maximum time an idle connection aboveminstays in the pool. Default:5m.min: Warm-pool floor. Default:0.min-timeout: Warm-pool maintenance probe timeout. Default:1s.min-retry: Delay between warm-pool maintenance retries. Default:250ms.
idle-timeout accepts duration units such as 5s, 500ms, and 1m.
Idle connections at or below the configured min value are kept open. Idle connections above min are closed after idle-timeout.
Setting min to a value greater than 0 keeps a warm-pool floor of established connections, enables unreachable-server fast-skip during request routing, and starts background maintenance probes.
min-timeout accepts duration units such as 1s, 500ms, and 2s. If the timeout is too short, slow connection establishment can be treated as a failure. If it is too long, recovery from unreachable servers becomes slower.
min-retry accepts duration units such as 250ms, 500ms, and 2s. Smaller values retry warm-pool probes more aggressively. Larger values reduce probe traffic, but slow down detection and recovery.
The default min value is 0, which disables all three. Set min 1; (or higher) on production servers where fast failover and warm pools matter.
See Backend Load Balancing for further information.
Error: Setting
mingreater thanmaxis a hard configuration error.
When every configured PostgreSQL pool appears full, Radiator returns a pool-exhausted error instead of intentionally queueing behind a saturated pool.