-
Couldn't load subscription status.
- Fork 4.6k
Description
📋 Bug Description
Desde a imagem evoapicloud/evolution-api:v2.3.4, as migrações Prisma padrão não respeitam o schema informado na variável DATABASE_URL (…?schema=evoapi_schema). Uma das novas migrações (20250918182355_add_kafka_integration) usa o schema public hardcoded, causando erro P3009 em bancos que não utilizam public.
🔄 Steps to Reproduce
Database no PostgreSQL com schema customizado e apontar DATABASE_URL para ele (?schema={custom_schema}).
Subir o container evoapicloud/evolution-api:v2.3.4.
Container roda npx prisma migrate deploy.
Prisma tenta aplicar prisma/postgresql-migrations/20250918182355_add_kafka_integration/migration.sql.
✅ Expected Behavior
A migração deveria criar a tabela Kafka dentro do schema definido na DATABASE_URL (no caso, evoapi_schema) e concluir sem erros.
❌ Actual Behavior
A migração falha com Error: P3009 e o stack mostra ERROR: relation "public.Instance" does not exist. O script cria a tabela no schema public (CREATE TABLE "public"."Kafka" …) e adiciona um FK referenciando public."Instance", ignorando o schema configurado.
🌍 Environment
Docker image: evoapicloud/evolution-api:v2.3.4
Banco: PostgreSQL 16
DATABASE_URL=postgres://evoapi_db:***@postgres:5454/evoapi_storage?schema=evoapi_schema
Prisma executado via npm run db:deploy dentro do container.
📋 Logs
evolution-api_1 | > evolution-api@2.3.4 db:deploy
evolution-api_1 | > node runWithProvider.js "rm -rf ./prisma/migrations && cp -r ./prisma/DATABASE_PROVIDER-migrations ./prisma/migrations && npx prisma migrate deploy --schema ./prisma/DATABASE_PROVIDER-schema.prisma"
evolution-api_1 |
evolution-api_1 | Environment variables loaded from .env
evolution-api_1 | Prisma schema loaded from prisma/postgresql-schema.prisma
evolution-api_1 | Datasource "db": PostgreSQL database "evoapi_storage", schema "evoapi_schema" at "postgres:5454"
evolution-api_1 |
evolution-api_1 | 56 migrations found in prisma/migrations
evolution-api_1 |
evolution-api_1 | Error: P3009
evolution-api_1 |
evolution-api_1 | migrate found failed migrations in the target database, new migrations will not be applied. Read more about how to resolve migration issues in a production database: https://pris.ly/d/migrate-resolve
evolution-api_1 | The 20250918182355_add_kafka_integration migration started at 2025-09-25 15:39:46.132704 UTC failed
evolution-api_1 |
evolution-api_1 |
evolution-api_1 | Error executing command: rm -rf ./prisma/migrations && cp -r ./prisma/postgresql-migrations ./prisma/migrations && npx prisma migrate deploy --schema ./prisma/postgresql-schema.prisma
evolution-api_1 | Migration failed📝 Additional Context
Arquivo problemático: prisma/postgresql-migrations/20250918182355_add_kafka_integration/migration.sql.
A atualização bloqueia qualquer instalação que mantenha as tabelas da EvolutionAPI fora do schema public, inclusive setups antigos que funcionavam até versões anteriores.