Client: SslOpenServer
Waiting for SSL while attempting connection
PostgreSQL wait event dossier
ClassClient
Event
SslOpenServer
VersionsPG 17-18
Evidence4 source location(s)
Official description
Waiting for SSL while attempting connection
| PG 13 | PG 14 | PG 15 | PG 16 | PG 17 | PG 18 |
|---|---|---|---|---|---|
| — | — | — | — | ✓ | ✓ |
Earlier names: Client/SSLOpenServer (PG 13-16)
Trigger mechanism
WAIT_EVENT_SSL_OPEN_SERVER at src/backend/libpq/be-secure-openssl.c:508 is the grep-verified reporting path. The public identity/resource is mapped at src/backend/utils/activity/wait_event.c:286. The instrumented operation is: Waiting for SSL while attempting connection. The frontend protocol path reports SslOpenServer immediately before a socket, TLS/GSS, or replication-client operation blocks. PostgreSQL is waiting for the remote side or network to progress.
Normal or trouble?
- Normal: Idle ClientRead sessions are normal connection-pool inventory.
- Investigate: Investigate active writes, handshakes, old idle-in-transaction sessions, connection exhaustion, or replication-client stalls.
Diagnostic SQL
Sessions waiting on Client/SslOpenServer
Current Client cohort
Lock and relation context for these sessions
Response
- Check state and transaction age before counting the wait as load.
- Correlate with the owning application, pool, and network path.
- Fix consumer backpressure or pool policy rather than repeatedly terminating connections.
Source evidence
- PostgreSQL 16.15 · src/backend/libpq/be-secure-openssl.c:508 —
WAIT_EVENT_SSL_OPEN_SERVER - PostgreSQL 16.15 · src/backend/utils/activity/wait_event.c:286 —
SSLOpenServer - PostgreSQL 18.6 · src/backend/libpq/be-secure-openssl.c:526 —
WAIT_EVENT_SSL_OPEN_SERVER - PostgreSQL 18.6 · src/backend/utils/activity/wait_event_names.txt:90 —
SSL_OPEN_SERVER
Related controls and signals
- GUCs: [guc:max_connections] · [guc:idle_in_transaction_session_timeout]
- Metrics: [metric:waiting_sessions] · [metric:wait_event_share] · [metric:active_backends]