What's Changed
- fix(opal-server): PR3 follow-ups from the staging campaign — fleet purge to client-less workers, boot metrics namespace, watcher flag gate, log volume, broadcaster TCP keepalive by @Zivxx in #945
Highlights:
- Broadcaster resilience (P9):
permit-broadcaster0.2.6 → 0.2.7 enables TCP keepalive on every Postgres backbone connection (on by default, 30/10/3). A broadcast DB whose address goes silent — e.g. an RDS Multi-AZ failover — is now detected within ~60 s and the existing reconnect+resync path recovers; previously the reader stayed connected-and-deaf indefinitely while health checks stayed green. Note: only addkeepalives*parameters toOPAL_BROADCAST_URIonce every server sharing it runs ≥ rc.3 (see the configuration docs); the defaults need no URI change. - Fleet purge reaches client-less workers (P5): every scopes worker now holds the broadcast listening context for its lifetime. Ops note: budget the broadcast DB's
max_connectionsfor 10 × workers × pods during a rolling restart (asyncpg poolmin_size). - Boot-phase metrics are namespaced (P1),
OPAL_REPO_WATCHER_ENABLEDproperly gates the scopes watcher (P3), sync-failure log volume is bounded (P6).
Full Changelog: 0.9.9-rc.2...0.9.9-rc.3