jackc/pgx · error · perDialConnectError

%s: %w

Error message

%s: %w

What it means

Error "%s: %w" thrown in jackc/pgx.

Source

Thrown at pgconn/pgconn.go:326

	}

	return nil, allErrors
}

// connectOne makes one connection attempt to a single host.
func connectOne(ctx context.Context, config *Config, connectConfig *connectOneConfig,
	ignoreNotPreferredErr bool,
) (*PgConn, error) {
	pgConn := new(PgConn)
	pgConn.config = config
	pgConn.cleanupDone = make(chan struct{})
	pgConn.customData = make(map[string]any)

	var err error

	newPerDialConnectError := func(msg string, err error) *perDialConnectError {
		err = normalizeTimeoutError(ctx, err)
		e := &perDialConnectError{address: connectConfig.address, originalHostname: connectConfig.originalHostname, err: fmt.Errorf("%s: %w", msg, err)}
		return e
	}

	maxProtocolVersion, err := parseProtocolVersion(config.MaxProtocolVersion)
	if err != nil {
		return nil, newPerDialConnectError("invalid max_protocol_version", err)
	}
	minProtocolVersion, err := parseProtocolVersion(config.MinProtocolVersion)
	if err != nil {
		return nil, newPerDialConnectError("invalid min_protocol_version", err)
	}

	pgConn.conn, err = config.DialFunc(ctx, connectConfig.network, connectConfig.address)
	if err != nil {
		return nil, newPerDialConnectError("dial error", err)
	}

	if connectConfig.tlsConfig != nil {

View on GitHub (pinned to ec1a0befd2)

When it happens

Trigger: Thrown at pgconn/pgconn.go:326 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of jackc/pgx@ec1a0befd2 (2026-08-04). Data as JSON: /data/errors/8fb07070cb222bb2.json. Report an issue: GitHub.