Error map
NSURLErrorDomain Code=-1001 Error Domain=NSURLErrorDomain Code=-1001 "The request timed out."
iOS · layer 1, On your device
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.
Directly related (12)
Cloudflare Error 522: Connection Timed Out
Cloudflare’s TCP connection to your origin timed out — the origin didn’t answer at all.
cURL error 28: Operation timed out after 30001 milliseconds with 0 bytes received
A PHP cURL (or Guzzle) request timed out before the remote server answered.
API Request Timed Out (ETIMEDOUT / ReadTimeout / timeout of 30000ms exceeded)
The client gave up waiting — either for the connection to open or for the response to arrive.
PHP Fatal error: Maximum execution time of 30 seconds exceeded
The script ran longer than `max_execution_time` and PHP stopped it.
FATAL: terminating connection due to idle-in-transaction timeout
A session opened a transaction and sat idle longer than idle_in_transaction_session_timeout.
AWS Lambda: Task timed out after X seconds
The function ran longer than its configured timeout (default 3 seconds) and Lambda stopped it.
MySQL ERROR 2013 (HY000): Lost connection to MySQL server during query
The connection dropped mid-query — server crash/restart, timeouts, or a proxy cutting long queries.
API Gateway: {"message": "Endpoint request timed out"} (504 after 29 seconds)
The backend (usually Lambda) didn’t respond within API Gateway’s integration timeout (29 seconds by default for REST APIs).
android.os.NetworkOnMainThreadException
The app made a network call on the main (UI) thread, which Android forbids.
SQL Server: Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
The command ran longer than the client’s CommandTimeout (default 30 seconds).
MySQL ERROR 2006 (HY000): MySQL server has gone away
The connection to MySQL was closed — usually by a timeout or a packet larger than `max_allowed_packet`.
HTTP 408 Request Timeout
The server closed the connection because the client took too long to send the complete request.
Two steps away (36)
HTTP 504 Gateway Timeout
A proxy or gateway waited too long for the upstream server to respond and gave up.
Cloudflare Error 520: Web Server Returned an Unknown Error
Cloudflare connected to your origin, but the origin returned an empty, unknown or invalid response.
Cloudflare Error 521: Web Server Is Down
Cloudflare couldn’t connect to your origin — the connection was refused.
HTTP 499 Client Closed Request (Nginx)
Nginx-specific code logged when the client disconnected before the server finished responding.
Cloudflare Error 524: A Timeout Occurred
Cloudflare connected to the origin, but the origin didn’t send an HTTP response within 100 seconds.
TypeError: Failed to execute 'json' on 'Response': body stream already read
A fetch Response body was consumed twice (e.g. calling .text() then .json()).
Error: connect ECONNREFUSED 127.0.0.1:5432
Nothing is listening at that host:port — the target service is down or you’re connecting to the wrong address.
SSL: CERTIFICATE_VERIFY_FAILED / unable to get local issuer certificate
The client couldn’t verify the server’s TLS certificate chain, so it refused the HTTPS connection.
Error: socket hang up / read ECONNRESET
The other side closed the TCP connection abruptly while your client was still using it.
PHP Fatal error: Allowed memory size of X bytes exhausted
The script tried to use more memory than PHP’s `memory_limit` allows.
WordPress: Briefly unavailable for scheduled maintenance. Check back in a minute.
An update was interrupted and WordPress left its `.maintenance` file behind, so the site stays in maintenance mode.
WordPress: The link you followed has expired
Usually an upload (theme, plugin, media) larger than PHP’s upload/post limits — WordPress receives an empty request and shows thi…
MySQL ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction
MySQL detected a deadlock between two transactions and rolled one back.
ERROR: canceling statement due to statement timeout
A query ran longer than statement_timeout and PostgreSQL cancelled it.
ERROR: could not serialize access due to concurrent update
A REPEATABLE READ/SERIALIZABLE transaction conflicted with a concurrent one and must be retried.
AWS: ThrottlingException / Rate exceeded
You exceeded the request rate for an AWS API; retry with exponential backoff.
java.util.concurrent.TimeoutException
A Future.get(timeout) or async operation didn’t complete in the allowed time.
Lambda: Runtime exited with error: signal: killed (Runtime.ExitError)
The function process was killed — almost always because it ran out of its configured memory.
MySQL ERROR 2002 (HY000): Can't connect to local MySQL server through socket
The client couldn’t reach the MySQL server — it isn’t running, or the client is looking for the socket/port in the wrong place.
MySQL ERROR 1040 (08004): Too many connections
MySQL reached `max_connections` and refuses new clients.
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
The MySQL JDBC driver couldn’t reach the database (or the connection dropped).
API Gateway {"message": "Internal server error"} 502 — Malformed Lambda proxy response
The Lambda behind an API Gateway proxy integration returned something that isn’t the required {statusCode, headers, body} shape,…
API Gateway 403: User is not authorized to access this resource with an explicit deny
An API Gateway authorizer (Lambda/Cognito) or resource policy denied the request.
SQS: The specified queue does not exist (AWS.SimpleQueueService.NonExistentQueue / QueueDoesNotExist)
The queue URL/name doesn’t exist in that region/account, or it was deleted (recently deleted names are blocked for 60 seconds).
ECS task stopped: CannotPullContainerError: pull image manifest has been retried ... / ref pull has been retried
The ECS task couldn’t pull its image — no network route to the registry, missing ECR permissions, or a wrong image tag.
Error response from daemon: network X not found
The container or Compose project refers to a Docker network that doesn’t exist (any more).
Error response from daemon: Pool overlaps with other one on this address space
Docker tried to create a network whose subnet clashes with an existing Docker network (or a VPN/host route).
Lock wait timeout exceeded; try restarting transaction (MySQL 1205)
A query waited too long for a row lock held by another transaction and gave up.
SQL Server: Login failed for user 'x'. (Error 18456)
SQL Server rejected the login — wrong password, wrong authentication mode, or a disabled/missing login.
SQL Server: Invalid column name 'x'. (Msg 207)
SQL Server can’t find the column — typo, missing migration, or a string in double quotes with QUOTED_IDENTIFIER ON.
MySQL ERROR 1045 (28000): Access denied for user
MySQL rejected the login — wrong password, wrong user/host combination, or the user doesn’t exist.
Deadlock found when trying to get lock; try restarting transaction
Two transactions waited on each other’s locks; the database killed one so the other could continue.
HikariPool-1 - Connection is not available, request timed out after 30000ms
The connection pool was exhausted — all connections were busy for 30 seconds.
HTTP 413 Content Too Large (Request Entity Too Large)
The request body is bigger than the server is willing to accept — usually a file upload over the configured limit.
fatal: unable to access 'https://github.com/…': Could not resolve host: github.com
DNS lookup for the Git host failed from this machine.
kex_exchange_identification: Connection closed by remote host
The SSH connection was closed before the handshake — server overload, rate limiting, or a proxy/firewall interfering.
Map another error
Popular: 403500400TypeErrorCritical error0xC000007BNullPointerException404