Error map

ClientClosedError: The client is closed (node-redis v4) node-redis: ClientClosedError: The client is closed

Redis · layer 5, Data

Open the full error page →

Centre: this error. First ring: errors it is linked with (9). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.

ClientClosedError: The client is closed (node-redis v4) — node-redis: ClientClosedError: The client is closed (Redis)ClientClose…ECONNRESET / Connection reset by peer on idle Redis connection — Redis: Error: read ECONNRESET / redis.exceptions.ConnectionError: Connection reset by peer after idle time (Redis)ECONNRESET / Connec…Client output buffer limit reached (scheduled to be closed) — Redis: Client id=12 addr=10.0.0.5:51234 scheduled to be closed ASAP for overcoming of output buffer limits (Redis)Client output buffe…BUSY Redis is busy running a script — Redis: (error) BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE (Redis)BUSY Redis is busy …MaxRetriesPerRequestError: Reached the max retries per request limit — ioredis: MaxRetriesPerRequestError: Reached the max retries per request limit (which is 20). Refer to "maxRetriesPerRequest" option for details (Redis)MaxRetriesPerReques…Only (P|S)SUBSCRIBE / (P|S)UNSUBSCRIBE / PING / QUIT allowed in this context — Redis: ERR Can't execute 'get': only (P|S)SUBSCRIBE / (P|S)UNSUBSCRIBE / PING / QUIT / RESET are allowed in this context (Redis)Only (P|S)SUBSCRIBE…Celery with Redis: tasks run twice (visibility_timeout) — Celery: Task executed twice / Restoring unacked messages — Redis broker visibility_timeout shorter than task ETA (Redis)Celery with Redis: …BullMQ: Missing lock for job / job stalled more than allowable limit — BullMQ: Error: Missing lock for job 42. moveToFinished / job stalled more than allowable limit (Redis)BullMQ: Missing loc…Error: connect ECONNREFUSED 127.0.0.1:6379 — Redis: Error: connect ECONNREFUSED 127.0.0.1:6379 / Could not connect to Redis at 127.0.0.1:6379: Connection refused (Redis)Error: connect ECON…Redis::CannotConnectError (Sidekiq/Rails) — Redis::CannotConnectError: Error connecting to Redis on localhost:6379 (Errno::ECONNREFUSED) (Ruby / Rails)Redis::CannotConnec…SQLSTATE[HY000] [2002] Connection refused — Laravel: SQLSTATE[HY000] [2002] Connection refused (SQL: select * from sessions) / php_network_getaddresses: getaddrinfo failed (Laravel)SQLSTATE[HY000] [20…Redis connection refused (Laravel) — Laravel: Predis\Connection\ConnectionException: Connection refused [tcp://127.0.0.1:6379] / RedisException: Connection refused (Laravel)Redis connection re…Redis TLS: SSL handshake error / protocol mismatch — Redis: Error: write EPROTO ... SSL routines:ssl3_get_record:wrong version number / Connection reset by peer (TLS vs plaintext) (Redis)Redis TLS: SSL hand…OOMKilled — Kubernetes: OOMKilled (exit code 137) (Kubernetes)OOMKilledOutOfMemoryError — java.lang.OutOfMemoryError: Java heap space (Java)OutOfMemoryErrorSIGSEGV — Segmentation fault (core dumped) (Linux)SIGSEGVNOAUTH — ReplyError: NOAUTH Authentication required. (Node.js)NOAUTHWRONGTYPE — WRONGTYPE Operation against a key holding the wrong kind of value (Node.js)WRONGTYPEOOM command not allowed — Redis: OOM command not allowed when used memory > 'maxmemory' (Redis)OOM command not all…NOAUTH / WRONGPASS invalid username-password pair — Redis: (error) NOAUTH Authentication required. / WRONGPASS invalid username-password pair or user is disabled (Redis)NOAUTH / WRONGPASS …Redlock: The operation was unable to achieve a quorum during its retry window — Redlock: ExecutionError: The operation was unable to achieve a quorum during its retry window / LockError: Exceeded 10 attempts to lock the resource (Redis)Redlock: The operat…Redis command timed out / ETIMEDOUT / Command timed out — Redis client: Error: Command timed out / redis.exceptions.TimeoutError: Timeout reading from socket (Redis)Redis command timed…Keyspace notifications not received (notify-keyspace-events) — Redis: PSUBSCRIBE __keyevent@0__:expired receives nothing — notify-keyspace-events is empty (Redis)Keyspace notificati…MasterNotFoundError: No master found for 'mymaster' (Sentinel) — redis-py: redis.sentinel.MasterNotFoundError: No master found for 'mymaster' / ioredis: All sentinels are unreachable (Redis)MasterNotFoundError…DENIED Redis is running in protected mode — Redis: DENIED Redis is running in protected mode because protected mode is enabled and no password is set for the default user (Redis)DENIED Redis is run…ERR max number of clients reached — Redis: ERR max number of clients reached (Redis)ERR max number of c…mem_fragmentation_ratio high / memory not released — Redis: INFO memory — mem_fragmentation_ratio:2.8 (RSS much larger than used_memory) (Redis)mem_fragmentation_r…MaxAttemptsExceededException (queue job) — Laravel Queue: Illuminate\Queue\MaxAttemptsExceededException: App\Jobs\SendReport has been attempted too many times or run too long (Laravel)MaxAttemptsExceeded…Keys disappear: maxmemory eviction (allkeys-lru) — Redis: evicted_keys growing — keys vanish unexpectedly because maxmemory is reached and a volatile/allkeys eviction policy is active (Redis)Keys disappear: max…Bad file format reading the append only file / AOF corrupted — Redis: Bad file format reading the append only file: make a backup of your AOF file, then use ./redis-check-aof --fix <filename> (Redis)Bad file format rea…Can't connect to Redis from another host (bind 127.0.0.1) — Redis: Could not connect to Redis at 10.0.0.5:6379: Connection timed out (Redis)Can't connect to Re…MOVED / ASK redirection (non-cluster client) — Redis: (error) MOVED 3999 10.0.0.6:6379 / ReplyError: MOVED 12182 192.168.0.5:7001 (Redis)MOVED / ASK redirec…ERR unknown command — Redis: (error) ERR unknown command 'JSON.GET', with args beginning with: / unknown command 'FT.SEARCH' (Redis)ERR unknown commandRedis closes idle clients (timeout setting) — Redis: Closing idle client / Connection closed by server after timeout 300 (Redis)Redis closes idle c…Can't save in background: fork: Cannot allocate memory — Redis: # Can't save in background: fork: Cannot allocate memory / WARNING overcommit_memory is set to 0! (Redis)Can't save in backg…Failed opening the temp RDB file / Permission denied writing dump.rdb — Redis: # Failed opening the temp RDB file temp-1234.rdb (in server root dir /var/lib/redis) for saving: Permission denied (Redis)Failed opening the …

Directly related (9)

ECONNRESET / Connection reset by peer on idle Redis connectionRedis

Redis: Error: read ECONNRESET / redis.exceptions.ConnectionError: Connection reset by peer after idle time

A middlebox or Redis closed an idle connection, and the pooled client reused it.

Client output buffer limit reached (scheduled to be closed)Redis

Redis: Client id=12 addr=10.0.0.5:51234 scheduled to be closed ASAP for overcoming of output buffer limits

A client (often a slow subscriber or a replica) couldn't read data fast enough, so Redis disconnected it to protect memory.

BUSY Redis is busy running a scriptRedis

Redis: (error) BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE

A long-running Lua script (or function) blocks the single-threaded server, so other commands are rejected.

MaxRetriesPerRequestError: Reached the max retries per request limitRedis

ioredis: MaxRetriesPerRequestError: Reached the max retries per request limit (which is 20). Refer to "maxRetriesPerRequest" option for details

ioredis tried to run a command 20 times while the connection was down and gave up.

Only (P|S)SUBSCRIBE / (P|S)UNSUBSCRIBE / PING / QUIT allowed in this contextRedis

Redis: ERR Can't execute 'get': only (P|S)SUBSCRIBE / (P|S)UNSUBSCRIBE / PING / QUIT / RESET are allowed in this context

A client in subscriber mode (after `SUBSCRIBE`) tried to run a normal command.

Celery with Redis: tasks run twice (visibility_timeout)Redis

Celery: Task executed twice / Restoring unacked messages — Redis broker visibility_timeout shorter than task ETA

Celery's Redis transport redelivers a task if it isn't acknowledged within `visibility_timeout` (1 hour by default).

BullMQ: Missing lock for job / job stalled more than allowable limitRedis

BullMQ: Error: Missing lock for job 42. moveToFinished / job stalled more than allowable limit

A BullMQ worker lost the lock on a job (it took too long or the event loop was blocked), so the job is considered stalled.

Error: connect ECONNREFUSED 127.0.0.1:6379Redis

Redis: Error: connect ECONNREFUSED 127.0.0.1:6379 / Could not connect to Redis at 127.0.0.1:6379: Connection refused

Nothing is listening on the Redis host/port your client uses.

Redis::CannotConnectError (Sidekiq/Rails)Ruby / Rails

Redis::CannotConnectError: Error connecting to Redis on localhost:6379 (Errno::ECONNREFUSED)

Sidekiq or the Rails Redis cache/cable couldn't connect to Redis.

Two steps away (26)

SQLSTATE[HY000] [2002] Connection refusedLaravel

Laravel: SQLSTATE[HY000] [2002] Connection refused (SQL: select * from sessions) / php_network_getaddresses: getaddrinfo failed

Laravel can't open a network connection to the database host and port from `.env`.

Redis connection refused (Laravel)Laravel

Laravel: Predis\Connection\ConnectionException: Connection refused [tcp://127.0.0.1:6379] / RedisException: Connection refused

Laravel can't connect to Redis, which it uses for cache, sessions or queues.

Redis TLS: SSL handshake error / protocol mismatchRedis

Redis: Error: write EPROTO ... SSL routines:ssl3_get_record:wrong version number / Connection reset by peer (TLS vs plaintext)

The client and server disagree about TLS — plaintext client to a TLS port, or TLS client to a plaintext port.

OOMKilledKubernetes

Kubernetes: OOMKilled (exit code 137)

The container used more memory than its limit, and the kernel killed it.

OutOfMemoryErrorJava

java.lang.OutOfMemoryError: Java heap space

The JVM ran out of heap memory and garbage collection couldn’t free enough.

SIGSEGVLinux

Segmentation fault (core dumped)

A program accessed memory it wasn’t allowed to, and the kernel killed it with SIGSEGV (exit code 139).

NOAUTHNode.js

ReplyError: NOAUTH Authentication required.

The Redis server requires a password (or ACL user) but the client didn’t authenticate.

WRONGTYPENode.js

WRONGTYPE Operation against a key holding the wrong kind of value

A Redis command was used on a key of a different type (e.g. HGET on a string key).

OOM command not allowedRedis

Redis: OOM command not allowed when used memory > 'maxmemory'

Redis reached its maxmemory limit and the eviction policy (noeviction) refuses new writes.

NOAUTH / WRONGPASS invalid username-password pairRedis

Redis: (error) NOAUTH Authentication required. / WRONGPASS invalid username-password pair or user is disabled

The server requires a password (or ACL user) and the client sent none or the wrong one.

Redlock: The operation was unable to achieve a quorum during its retry windowRedis

Redlock: ExecutionError: The operation was unable to achieve a quorum during its retry window / LockError: Exceeded 10 attempts to lock the resource

A distributed lock couldn't be acquired because another holder keeps it or too few Redis nodes responded.

Redis command timed out / ETIMEDOUT / Command timed outRedis

Redis client: Error: Command timed out / redis.exceptions.TimeoutError: Timeout reading from socket

The client waited longer than its timeout for a Redis reply.

Keyspace notifications not received (notify-keyspace-events)Redis

Redis: PSUBSCRIBE __keyevent@0__:expired receives nothing — notify-keyspace-events is empty

Expired/changed key events aren't published because notifications are disabled by default.

MasterNotFoundError: No master found for 'mymaster' (Sentinel)Redis

redis-py: redis.sentinel.MasterNotFoundError: No master found for 'mymaster' / ioredis: All sentinels are unreachable

The client asked Sentinels for the current master but got none (names wrong, sentinels down/unreachable, or failover in progress).

DENIED Redis is running in protected modeRedis

Redis: DENIED Redis is running in protected mode because protected mode is enabled and no password is set for the default user

Redis refuses connections from non-local clients when it has no password and is bound to all interfaces.

ERR max number of clients reachedRedis

Redis: ERR max number of clients reached

Redis hit its `maxclients` limit (default 10000, lower if the OS limit is low), so new connections are refused.

mem_fragmentation_ratio high / memory not releasedRedis

Redis: INFO memory — mem_fragmentation_ratio:2.8 (RSS much larger than used_memory)

The process uses far more RSS than the data size, due to allocator fragmentation or deleted-but-not-returned memory.

MaxAttemptsExceededException (queue job)Laravel

Laravel Queue: Illuminate\Queue\MaxAttemptsExceededException: App\Jobs\SendReport has been attempted too many times or run too long

A queued job failed repeatedly or ran past its timeout, so it was marked failed.

Keys disappear: maxmemory eviction (allkeys-lru)Redis

Redis: evicted_keys growing — keys vanish unexpectedly because maxmemory is reached and a volatile/allkeys eviction policy is active

Redis removed keys to stay under `maxmemory` according to the eviction policy.

Bad file format reading the append only file / AOF corruptedRedis

Redis: Bad file format reading the append only file: make a backup of your AOF file, then use ./redis-check-aof --fix <filename>

Redis can't load the AOF on startup because it's truncated or corrupted, so the server refuses to start.

Can't connect to Redis from another host (bind 127.0.0.1)Redis

Redis: Could not connect to Redis at 10.0.0.5:6379: Connection timed out

Redis only listens on localhost by default, so remote clients time out or are refused.

MOVED / ASK redirection (non-cluster client)Redis

Redis: (error) MOVED 3999 10.0.0.6:6379 / ReplyError: MOVED 12182 192.168.0.5:7001

The key lives on another cluster node, and the client isn't cluster-aware, so it just sees the redirect.

ERR unknown commandRedis

Redis: (error) ERR unknown command 'JSON.GET', with args beginning with: / unknown command 'FT.SEARCH'

The server doesn't know the command — wrong name, newer Redis version, or a missing module.

Redis closes idle clients (timeout setting)Redis

Redis: Closing idle client / Connection closed by server after timeout 300

Redis' `timeout` directive closes connections idle longer than N seconds.

Can't save in background: fork: Cannot allocate memoryRedis

Redis: # Can't save in background: fork: Cannot allocate memory / WARNING overcommit_memory is set to 0!

Redis couldn't fork to write an RDB/AOF snapshot because the OS refused to allocate memory.

Failed opening the temp RDB file / Permission denied writing dump.rdbRedis

Redis: # Failed opening the temp RDB file temp-1234.rdb (in server root dir /var/lib/redis) for saving: Permission denied

Redis can't write its snapshot file to the configured directory.