** (KeyError) key :database not found in: [telemetry_prefix:

Hi! This seems to be a common issue when configuration is missing, whenever I run mix ecto.create:

** (KeyError) key :database not found in: [telemetry_prefix: [:epp, :db_name, :repo], otp_app: :epp, timeout: 15000, pool_size: 10]

Wonder if anyone has a clue on what might cause it?

The application was working fine from a previous version of elixir/otp but after an update I’m having issues building releases. These are the current installed versions:

Erlang/OTP 23 [erts-11.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [hipe]

Mix 1.10.3 (compiled with Erlang/OTP 21)

In my configuration I have a config.exs and releases.exs but it seems the application is now unable to read the releases.exs config. If I fallback it to prod.secret.exs it can find the database with no issue.

My mix version is 1.10.3 so it seems there’s no need to change the releases.exs file to the runtime.exs file (tried it with the same results).

If it helps I created a “test” app from scratch with the configuration I’m trying to use:

Ok a miss step on my end, totally forgot that Ecto migrations (and database creation) is ran at runtime when you have your release built.

The scripts on the Ecto docs where enough to solve it :slight_smile: