Error map

Missing secret_key_base for 'production' environment Rails: ArgumentError: Missing `secret_key_base` for 'production' environment, set this string with `bin/rails credentials:edit`

Ruby / Rails · layer 4, Application & API

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.

Missing secret_key_base for 'production' environment — Rails: ArgumentError: Missing `secret_key_base` for 'production' environment, set this string with `bin/rails credentials:edit` (Ruby / Rails)Missing sec…ActiveRecord::IrreversibleMigration — Rails: ActiveRecord::IrreversibleMigration — This migration uses remove_column without a type; db:rollback can't reverse it (Ruby / Rails)ActiveRecord::Irrev…Missing encryption key to decrypt file with — Rails: ArgumentError: Missing encryption key to decrypt file with. Ask your team for your master key and write it to config/master.key or put it in the ENV['RAILS_MASTER_KEY'] (Ruby / Rails)Missing encryption …ActiveRecord::ConnectionNotEstablished — Rails: ActiveRecord::ConnectionNotEstablished: No connection pool for 'ActiveRecord::Base' found (Ruby / Rails)ActiveRecord::Conne…ActiveRecord::Deadlocked: PG::TRDeadlockDetected — Rails: ActiveRecord::Deadlocked: PG::TRDeadlockDetected: ERROR: deadlock detected (Ruby / Rails)ActiveRecord::Deadl…Sprockets::Rails::Helper::AssetNotPrecompiled — Rails: Asset `application.js` was not declared to be precompiled in production / The asset "application.css" is not present in the asset pipeline (Ruby / Rails)Sprockets::Rails::H…Yarn executable was not detected in the system — Rails: Yarn executable was not detected in the system. Download Yarn at https://yarnpkg.com/en/docs/install (Ruby / Rails)Yarn executable was…ActiveSupport::MessageEncryptor::InvalidMessage — Rails: ActiveSupport::MessageEncryptor::InvalidMessage (credentials.yml.enc can't be decrypted — wrong master.key) (Ruby / Rails)ActiveSupport::Mess…A server is already running. Check /tmp/pids/server.pid — Rails: A server is already running (pid: 12345, file: /app/tmp/pids/server.pid). Exiting (Ruby / Rails)A server is already…ActiveRecord::AssociationTypeMismatch — Rails: ActiveRecord::AssociationTypeMismatch: User(#1234) expected, got "42" which is an instance of String(#5678) (Ruby / Rails)ActiveRecord::Assoc…1146 — MySQL ERROR 1146 (42S02): Table 'db.table' doesn't exist (MySQL)114642P01 — PostgreSQL: ERROR: relation "x" does not exist (PostgreSQL)42P011022 — MySQL ERROR 1022 (23000): Can't write; duplicate key in table (MySQL)1022ActionController::InvalidAuthenticityToken — Rails: ActionController::InvalidAuthenticityToken (Can't verify CSRF token authenticity) (Ruby / Rails)ActionController::I…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 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…NameError: uninitialized constant — Ruby: NameError: uninitialized constant UsersController::User (Did you mean? Users) (Ruby / Rails)NameError: uninitia…NameError: undefined local variable or method — Ruby: NameError: undefined local variable or method 'x' for main:Object (Ruby / Rails)NameError: undefine…ActiveRecord::RecordNotFound: Couldn't find X with 'id'= — Rails: ActiveRecord::RecordNotFound: Couldn't find User with 'id'=42 (Ruby / Rails)ActiveRecord::Recor…Vite manifest not found — Laravel: Vite manifest not found at: public/build/manifest.json (PHP)Vite manifest not f…Zeitwerk::NameError: expected file to define constant — Rails: Zeitwerk::NameError: expected file app/models/user_profile.rb to define constant UserProfile, but didn't (Ruby / Rails)Zeitwerk::NameError…script command not found — sh: vite: command not found (npm script) (npm)script command not …DecryptException: The payload is invalid / The MAC is invalid — Laravel: Illuminate\Contracts\Encryption\DecryptException: The payload is invalid. / The MAC is invalid. (Laravel)DecryptException: T…port is already allocated — Docker: Bind for 0.0.0.0:80 failed: port is already allocated (Docker)port is already all…57P03 — FATAL: the database system is starting up (PostgreSQL)57P03data directory permissions — FATAL: data directory "/var/lib/postgresql/data" has invalid permissions — Permissions should be u=rwx (0700) or u=rwx,g=rx (0750). (PostgreSQL)data directory perm…ActiveRecord::PendingMigrationError — Rails: ActiveRecord::PendingMigrationError — Migrations are pending. To resolve this issue, run: bin/rails db:migrate (Ruby / Rails)ActiveRecord::Pendi…ActiveRecord::RecordInvalid: Validation failed — Rails: ActiveRecord::RecordInvalid: Validation failed: Email can't be blank, Name is too short (Ruby / Rails)ActiveRecord::Recor…PG::UndefinedTable: relation does not exist — Rails: ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "users" does not exist (Ruby / Rails)PG::UndefinedTable:…

Directly related (9)

ActiveRecord::IrreversibleMigrationRuby / Rails

Rails: ActiveRecord::IrreversibleMigration — This migration uses remove_column without a type; db:rollback can't reverse it

`rails db:rollback` can't undo the migration because it contains an operation Rails can't invert.

Missing encryption key to decrypt file withRuby / Rails

Rails: ArgumentError: Missing encryption key to decrypt file with. Ask your team for your master key and write it to config/master.key or put it in the ENV['RAILS_MASTER_KEY']

Rails needs `config/master.key` or `RAILS_MASTER_KEY` to read credentials, and neither exists.

ActiveRecord::ConnectionNotEstablishedRuby / Rails

Rails: ActiveRecord::ConnectionNotEstablished: No connection pool for 'ActiveRecord::Base' found

ActiveRecord has no database connection configured or established for this process.

ActiveRecord::Deadlocked: PG::TRDeadlockDetectedRuby / Rails

Rails: ActiveRecord::Deadlocked: PG::TRDeadlockDetected: ERROR: deadlock detected

Two transactions locked rows in opposite orders, so PostgreSQL aborted one.

Sprockets::Rails::Helper::AssetNotPrecompiledRuby / Rails

Rails: Asset `application.js` was not declared to be precompiled in production / The asset "application.css" is not present in the asset pipeline

A layout references an asset that Sprockets doesn't know to compile or can't find.

Yarn executable was not detected in the systemRuby / Rails

Rails: Yarn executable was not detected in the system. Download Yarn at https://yarnpkg.com/en/docs/install

Rails asset tasks (`assets:precompile`, webpacker/jsbundling) need Node and Yarn but they're not installed/on PATH.

ActiveSupport::MessageEncryptor::InvalidMessageRuby / Rails

Rails: ActiveSupport::MessageEncryptor::InvalidMessage (credentials.yml.enc can't be decrypted — wrong master.key)

Rails couldn't decrypt `credentials.yml.enc` (or a signed/encrypted cookie) because the key is wrong or the data changed.

A server is already running. Check /tmp/pids/server.pidRuby / Rails

Rails: A server is already running (pid: 12345, file: /app/tmp/pids/server.pid). Exiting

Rails thinks another server is running because a stale `server.pid` exists (often after a crash or in Docker).

ActiveRecord::AssociationTypeMismatchRuby / Rails

Rails: ActiveRecord::AssociationTypeMismatch: User(#1234) expected, got "42" which is an instance of String(#5678)

You assigned the wrong kind of object (or an id string) to an association.

Two steps away (19)

1146MySQL

MySQL ERROR 1146 (42S02): Table 'db.table' doesn't exist

The query references a table that MySQL can’t find in that database.

42P01PostgreSQL

PostgreSQL: ERROR: relation "x" does not exist

The table/view isn’t found — missing migration, wrong schema, or a case-sensitive quoted name.

1022MySQL

MySQL ERROR 1022 (23000): Can't write; duplicate key in table

An ALTER/CREATE produced a duplicate key or constraint name — often a foreign key name that already exists in the database.

ActionController::InvalidAuthenticityTokenRuby / Rails

Rails: ActionController::InvalidAuthenticityToken (Can't verify CSRF token authenticity)

A non-GET request arrived without a valid CSRF token for the session.

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

NameError: uninitialized constantRuby / Rails

Ruby: NameError: uninitialized constant UsersController::User (Did you mean? Users)

Ruby (or Rails autoloading) couldn't find a class or module with that name in the current scope.

NameError: undefined local variable or methodRuby / Rails

Ruby: NameError: undefined local variable or method 'x' for main:Object

Ruby saw a bare identifier that is neither a local variable nor a method on the current object.

ActiveRecord::RecordNotFound: Couldn't find X with 'id'=Ruby / Rails

Rails: ActiveRecord::RecordNotFound: Couldn't find User with 'id'=42

`find`/`find_by!` didn't find a row, so Rails raises (and renders a 404 in production).

Vite manifest not foundPHP

Laravel: Vite manifest not found at: public/build/manifest.json

Laravel’s @vite directive can’t find the compiled asset manifest because assets weren’t built.

Zeitwerk::NameError: expected file to define constantRuby / Rails

Rails: Zeitwerk::NameError: expected file app/models/user_profile.rb to define constant UserProfile, but didn't

Rails autoloading found a file whose name implies a constant the file doesn't define.

script command not foundnpm

sh: vite: command not found (npm script)

A tool used in an npm script isn’t installed in node_modules/.bin.

DecryptException: The payload is invalid / The MAC is invalidLaravel

Laravel: Illuminate\Contracts\Encryption\DecryptException: The payload is invalid. / The MAC is invalid.

Laravel couldn't decrypt a cookie, session or encrypted value — the `APP_KEY` changed or the data was corrupted.

port is already allocatedDocker

Docker: Bind for 0.0.0.0:80 failed: port is already allocated

Another container or host process already publishes that host port.

57P03PostgreSQL

FATAL: the database system is starting up

PostgreSQL is still starting (or recovering) and not accepting connections yet.

data directory permissionsPostgreSQL

FATAL: data directory "/var/lib/postgresql/data" has invalid permissions — Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).

PostgreSQL refuses to start because the data directory is too open or owned by the wrong user.

ActiveRecord::PendingMigrationErrorRuby / Rails

Rails: ActiveRecord::PendingMigrationError — Migrations are pending. To resolve this issue, run: bin/rails db:migrate

The database schema is behind the migration files in the app.

ActiveRecord::RecordInvalid: Validation failedRuby / Rails

Rails: ActiveRecord::RecordInvalid: Validation failed: Email can't be blank, Name is too short

`save!`/`create!`/`update!` raised because validations failed.

PG::UndefinedTable: relation does not existRuby / Rails

Rails: ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "users" does not exist

Rails queried a table that isn't in the connected PostgreSQL database.