# Diagnosing RESP connection timeouts to Upstash Redis

## Symptom

The client hangs on connect, then times out. No auth error, no data URIs
just silence.

## Step 1: check TLS

Upstash requires TLS with no off switch. A plaintext connection
attempt gets no useful error back, it just dies.

- ioredis: use the rediss:// scheme or pass tls in options.
- redis-py: pass ssl=True.
- redigo: redis.DialUseTLS(true).
- jedis: the boolean TLS flag in the constructor.
- redis-cli: redis-cli --tls.

## Step 2: check the port and firewall

Use the port from the console TCP tab. Corporate firewalls and some
VPC egress rules block non-HTTPS ports. If TLS is on and it still
hangs, try from a different network to isolate firewall versus
config.

## Step 3: check DNS

The endpoint is a long regional hostname. A typo'd hostname hangs
rather than erroring fast in some clients. Copy it from the console,
do not retype it.

## Fix and verify

Enable TLS, re-copy endpoint and port, and connect. A PONG on the
first try confirms it. If your environment cannot do TLS on that
port at all, switch to the REST API, which is plain HTTPS.