Error map
sql: database is closed / driver: bad connection Go: sql: database is closed
Go · layer 4, Application & API
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.
Directly related (9)
Go: listen tcp :8080: bind: address already in use
The port your Go server wants is already taken by another process (or a previous instance of your app).
Go: cannot assign to struct field users["bob"].Age in map
Map values are not addressable, so you cannot modify a field of a struct stored directly in a map.
Go: panic: assignment to entry in nil map
You wrote to a map that was declared but never initialised.
Go: context canceled (rpc error: code = Canceled desc = context canceled)
The context was cancelled before the operation finished — the caller gave up, the client disconnected, or a parent was cancelled.
Go: dial tcp 127.0.0.1:5432: connect: connection refused
Nothing is listening on the host and port your Go program tried to connect to.
MySQL: ERROR 2026 (HY000): SSL connection error: SSL is required but the server doesn't support it
The client demanded SSL/TLS (`--ssl-mode=REQUIRED`) but the MySQL server has TLS disabled or no certificates configured.
Go: assignment mismatch: 1 variable but os.Open returns 2 values
The number of variables on the left does not match the number of values the function returns.
Go: sql: no rows in result set
`QueryRow(...).Scan(...)` found no row for the query.
PostgreSQL: root certificate file "/home/user/.postgresql/root.crt" does not exist. Either provide the file or change sslmode
The connection string asks for certificate verification (`sslmode=verify-ca` or `verify-full`) but no CA file was provided.
Two steps away (24)
Docker: Bind for 0.0.0.0:80 failed: port is already allocated
Another container or host process already publishes that host port.
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).
Go: ./main.go:5:2: "os" imported and not used
The file imports a package that no code in that file uses; Go treats this as a compile error, not a warning.
Go: ./main.go:12:2: undefined: handler
The compiler cannot find an identifier — a typo, a missing import, or it lives in another file/package that wasn't built.
Go: ./main.go:18:1: missing return
A function with a return type can reach its end without a return statement on some path.
Go: panic: runtime error: invalid memory address or nil pointer dereference
The program used a pointer, map, interface or struct field that was nil — usually an uninitialised value or an ignored error.
Go: panic: runtime error: index out of range [3] with length 3
Code accessed a slice, array or string element beyond its length.
Go: panic: runtime error: slice bounds out of range [:5] with capacity 3
A slice expression `s[a:b]` used bounds outside the slice's length or capacity.
Go: panic: send on closed channel
A goroutine sent a value to a channel after it had been closed.
Go: Get "https://api.example.com": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
An operation did not finish before its context deadline or HTTP client timeout.
driver failed programming external connectivity on endpoint: iptables: No chain/target/match by that name
Docker’s iptables rules were wiped (firewalld/ufw reload, iptables flush) while Docker was running, so it can’t publish ports.
Go: invalid character '<' looking for beginning of value
The decoder received something that is not JSON — often an HTML error page, an empty body or plain text.
Go: http: superfluous response.WriteHeader call from main.handler (main.go:25)
A handler wrote the status header more than once, or wrote the body first (which sends 200) and then tried to set another status.
OpenSSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number
The peer did not answer with a TLS record — you spoke TLS to a plain HTTP/SMTP port (or the reverse), or a proxy intervened.
Nginx: [emerg] SSL_CTX_use_PrivateKey_file("/etc/ssl/server.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)
The private key does not belong to the certificate configured in the server.
Apache: AH02240: Server should be SSL-aware but has no certificate configured / SSLCertificateFile: file '/etc/ssl/x.crt' does not exist or is empty
Apache cannot find the certificate or key file named in its configuration, or `SSLEngine on` is set without any certificate.
Go: ./main.go:9:6: no new variables on left side of :=
`:=` declares variables, but all names on the left already exist in the same scope.
Go: invalid operation: a + b (mismatched types int and float64)
You combined two values of different types; Go never converts numeric types implicitly.
Go: cannot use "5" (untyped string constant) as int value in argument to f
A value's type is not assignable to the type required by the variable, parameter or return value.
Go: cannot find package "github.com/pkg/errors" in any of: /usr/local/go/src/github.com/pkg/errors (from $GOROOT) /go/src/github.com/pkg/errors (from $GOPATH)
Go could not locate an imported package — it is not downloaded, the module is not initialised, or GOPATH mode is in effect.
server does not support SSL, but SSL was required / no pg_hba.conf entry … no encryption
The client and server disagree about SSL — the client requires it but the server doesn’t offer it, or the server requires it and…
OpenSSL: error:num=20:unable to get local issuer certificate / SSL: CERTIFICATE_VERIFY_FAILED
The client could not build a chain from the server's certificate to a CA it trusts — the issuer is missing locally or the server…
Let's Encrypt: Fetching http://example.com/.well-known/acme-challenge/token: Timeout during connect (likely firewall problem)
The ACME validation server could not reach your server on port 80 within the timeout.
Map another error
Popular: 500403400ORA-009331064Critical errorFileNotFoundException assemblyTypeError