Error codes
When Alcuin itself stops something, the message carries a code such as ALC-1001. Each code has a page here with what you see, why it happens and what to do. Codes never change meaning, so a search for one, or a link to its page in an issue, stays good.
Errors from Postgres carry the server’s own five-character SQLSTATE code instead, such as 42P01 for a table that does not exist. Alcuin shows those in the server’s words, at the place in your query the server points to. The Postgres manual lists them all in its error codes appendix.
| Code | Meaning | Internal name |
|---|---|---|
| ALC-1001 | Could not connect | ENGINE_CONNECT_FAILED |
| ALC-1002 | Connection lost | ENGINE_CONNECTION_LOST |
| ALC-1003 | Unknown SSH host key | ENGINE_SSH_HOST_UNKNOWN |
| ALC-1004 | SSH host key changed | ENGINE_SSH_HOST_CHANGED |
| ALC-1005 | Transaction outcome unknown | ENGINE_TX_UNKNOWN |
| ALC-2001 | Canceled | ENGINE_CANCELLED |
| ALC-2002 | Timed out | ENGINE_TIMEOUT |
| ALC-3001 | Connection is read-only | ENGINE_READ_ONLY |
| ALC-3002 | Row changed since you loaded it | ENGINE_STALE_ROW |
| ALC-3003 | Changes already applied | ENGINE_DUPLICATE_CHANGESET |
| ALC-3004 | Confirmation required | ENGINE_CONFIRM_REQUIRED |
| ALC-3005 | Not allowed for this role | ENGINE_PERMISSION_DENIED |
| ALC-3006 | Conflicting change | ENGINE_CONFLICT |
| ALC-3007 | Earlier changes landed | ENGINE_EARLIER_COMMIT_LANDED |
| ALC-4001 | Agent request refused | ENGINE_AGENT_REFUSED |
| ALC-9001 | Not supported here | ENGINE_UNSUPPORTED |
| ALC-9002 | No longer there | ENGINE_NOT_FOUND |
| ALC-9003 | Request refused | ENGINE_BAD_REQUEST |
| ALC-9004 | Service unavailable | ENGINE_UNAVAILABLE |
| ALC-9005 | Internal error | ENGINE_INTERNAL |