Error map

CLUSTERDOWN Hash slot not served Redis Cluster: (error) CLUSTERDOWN Hash slot not served / The cluster is down

Redis · layer 5, Data

Open the full error page →

Centre: this error. First ring: errors it is linked with (12). 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.

CLUSTERDOWN Hash slot not served — Redis Cluster: (error) CLUSTERDOWN Hash slot not served / The cluster is down (Redis)CLUSTERDOWN…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 …Sentinel: failover aborted / -failover-abort-no-good-slave — Redis Sentinel: # -failover-abort-no-good-slave master mymaster 10.0.0.5 6379 / +sdown master (Redis)Sentinel: failover …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…CROSSSLOT Keys in request don't hash to the same slot — Redis Cluster: (error) CROSSSLOT Keys in request don't hash to the same slot (Redis)CROSSSLOT Keys in r…NOSCRIPT No matching script. Please use EVAL — Redis: (error) NOSCRIPT No matching script. Please use EVAL. (Redis)NOSCRIPT No matchin…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…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: …Redis latency spikes: slow commands (KEYS, SMEMBERS) — Redis: SLOWLOG GET shows KEYS * taking 1500000 microseconds — server blocked (Redis)Redis latency spike…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…ERR This instance has cluster support disabled — Redis: (error) ERR This instance has cluster support disabled (Redis)ERR This instance h…Redis::CannotConnectError (Sidekiq/Rails) — Redis::CannotConnectError: Error connecting to Redis on localhost:6379 (Errno::ECONNREFUSED) (Ruby / Rails)Redis::CannotConnec…Replica full resync loop (output buffer / timeout) — Redis: Client id=7 scheduled to be closed ASAP for overcoming of output buffer limits (replica) / MASTER <-> REPLICA sync: Timeout (Redis)Replica full resync…NOAUTH — 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…READONLY You can't write against a read only replica — Redis: READONLY You can't write against a read only replica (Redis)READONLY You can't …MASTERDOWN Link with MASTER is down and replica-serve-stale-data is set to no — Redis replica: (error) MASTERDOWN Link with MASTER is down and replica-serve-stale-data is set to 'no' (Redis)MASTERDOWN Link wit…MasterNotFoundError: No master found for 'mymaster' (Sentinel) — redis-py: redis.sentinel.MasterNotFoundError: No master found for 'mymaster' / ioredis: All sentinels are unreachable (Redis)MasterNotFoundError…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…ERR DB index is out of range — Redis: (error) ERR DB index is out of range / ERR SELECT is not allowed in cluster mode (Redis)ERR DB index is out…EXECABORT Transaction discarded because of previous errors — Redis: (error) EXECABORT Transaction discarded because of previous errors. (Redis)EXECABORT Transacti…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…ERR unknown command — Redis: (error) ERR unknown command 'JSON.GET', with args beginning with: / unknown command 'FT.SEARCH' (Redis)ERR unknown commandRedis command timed out / ETIMEDOUT / Command timed out — Redis client: Error: Command timed out / redis.exceptions.TimeoutError: Timeout reading from socket (Redis)Redis command timed…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…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…NOAUTH / WRONGPASS invalid username-password pair — Redis: (error) NOAUTH Authentication required. / WRONGPASS invalid username-password pair or user is disabled (Redis)NOAUTH / WRONGPASS …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…Sending build context — Docker build slow: "Sending build context to Docker daemon 2.5GB" / transferring context takes forever (Docker)Sending build conte…Maximum execution time of 30 seconds exceeded — Laravel: Symfony\Component\ErrorHandler\Error\FatalError: Maximum execution time of 30 seconds exceeded (Laravel)Maximum execution t…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…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…ERR max number of clients reached — Redis: ERR max number of clients reached (Redis)ERR max number of c…env() returns null (config cached) — Laravel: .env changes ignored / env('X') returns null after php artisan config:cache (Laravel)env() returns null …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…Redis closes idle clients (timeout setting) — Redis: Closing idle client / Connection closed by server after timeout 300 (Redis)Redis closes idle c…Redis connection refused (Laravel) — Laravel: Predis\Connection\ConnectionException: Connection refused [tcp://127.0.0.1:6379] / RedisException: Connection refused (Laravel)Redis connection re…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…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…LOADING Redis is loading the dataset in memory — Redis: (error) LOADING Redis is loading the dataset in memory (Redis)LOADING Redis is lo…

Directly related (12)

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.

Sentinel: failover aborted / -failover-abort-no-good-slaveRedis

Redis Sentinel: # -failover-abort-no-good-slave master mymaster 10.0.0.5 6379 / +sdown master

Sentinel detected the master as down but found no healthy replica to promote.

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.

CROSSSLOT Keys in request don't hash to the same slotRedis

Redis Cluster: (error) CROSSSLOT Keys in request don't hash to the same slot

A multi-key command or transaction used keys that live in different cluster slots.

NOSCRIPT No matching script. Please use EVALRedis

Redis: (error) NOSCRIPT No matching script. Please use EVAL.

`EVALSHA` referenced a script hash the server doesn't have cached (after restart, failover, or `SCRIPT FLUSH`).

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.

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).

Redis latency spikes: slow commands (KEYS, SMEMBERS)Redis

Redis: SLOWLOG GET shows KEYS * taking 1500000 microseconds — server blocked

Redis is single-threaded; one slow command delays everything else.

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.

ERR This instance has cluster support disabledRedis

Redis: (error) ERR This instance has cluster support disabled

A cluster command (or cluster client) was used against a standalone Redis instance.

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.

Replica full resync loop (output buffer / timeout)Redis

Redis: Client id=7 scheduled to be closed ASAP for overcoming of output buffer limits (replica) / MASTER <-> REPLICA sync: Timeout

A replica can't finish the initial sync because the master's replication buffer fills up or the transfer times out, so it restart…

Two steps away (29)

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.

READONLY You can't write against a read only replicaRedis

Redis: READONLY You can't write against a read only replica

The client is connected to a replica (or a failed-over node) and tried to write.

MASTERDOWN Link with MASTER is down and replica-serve-stale-data is set to noRedis

Redis replica: (error) MASTERDOWN Link with MASTER is down and replica-serve-stale-data is set to 'no'

A replica lost its connection to the master and refuses to serve possibly stale data.

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).

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.

ERR DB index is out of rangeRedis

Redis: (error) ERR DB index is out of range / ERR SELECT is not allowed in cluster mode

`SELECT n` used a database number the server doesn't have, or you're on Redis Cluster/managed Redis that only has DB 0.

EXECABORT Transaction discarded because of previous errorsRedis

Redis: (error) EXECABORT Transaction discarded because of previous errors.

A command queued inside `MULTI` had a syntax error, so `EXEC` aborted the whole transaction.

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.

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 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.

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.

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.

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.

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.

Sending build contextDocker

Docker build slow: "Sending build context to Docker daemon 2.5GB" / transferring context takes forever

docker build is uploading your whole project folder — node_modules, .git, data files — before building, because there’s no (or a…

Maximum execution time of 30 seconds exceededLaravel

Laravel: Symfony\Component\ErrorHandler\Error\FatalError: Maximum execution time of 30 seconds exceeded

A web request ran longer than PHP's `max_execution_time` and was killed.

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.

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.

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.

env() returns null (config cached)Laravel

Laravel: .env changes ignored / env('X') returns null after php artisan config:cache

After `config:cache`, Laravel no longer reads `.env`, so `env()` calls outside config files return null and edits to `.env` have…

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.

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.

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.

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.

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.

LOADING Redis is loading the dataset in memoryRedis

Redis: (error) LOADING Redis is loading the dataset in memory

Redis is starting and still reading its RDB/AOF, so it rejects commands temporarily.