Pular para o conteúdo
upgbp

Dados & Migrações

Modelagem, migração e conexão com Postgres sem derrubar produção.

Dados & Migrações11 min

RLS no Supabase: por que sua query retorna array vazio

new row violates row-level security policy for table "pedidos" (42501)

Com Row Level Security ligada, o SELECT bloqueado não dá erro — devolve nada. Como depurar a política sem desligar a segurança para "testar".

  • Supabase Postgres 15
  • supabase-js 2
  • Prisma 6.5
Dados & Migrações11 min

Query lenta no Postgres: do pg_stat_statements ao índice certo

ERROR: canceling statement due to statement timeout (57014)

Como achar qual consulta derruba o banco, ler o plano de execução sem adivinhação e escolher o índice que resolve — em vez de criar cinco na esperança.

  • PostgreSQL 15
  • pg_stat_statements
  • Prisma 6.5
Dados & Migrações9 min

Supabase: porta 5432, 6543 ou conexão direta — qual usar

MaxClientsInSessionMode: max clients reached - in Session mode max clients are limited to pool_size

São três formas de conectar no mesmo banco, com limitações diferentes. Escolher errado gera erros que parecem de código e são de infraestrutura.

  • Supabase Postgres 15
  • Supavisor
  • Prisma 6.5
  • Node 22
Dados & Migrações8 min

prepared statement s0 already exists: por que o pooler quebra

ERROR: prepared statement "s0" already exists (42P05)

O erro só aparece depois que você troca a conexão direta pelo pooler em modo transaction. A causa está em como o Postgres guarda statements preparados.

  • Prisma 6.5
  • Drizzle 0.44
  • postgres.js 3.4
  • Supavisor · PgBouncer
Dados & Migrações10 min

Migrar do MongoDB para PostgreSQL sem perder os dados aninhados

ERROR: invalid input syntax for type uuid: "{""$oid"":""66f1a2b3c4d5e6f7a8b9c0d1""}"

Documentos com arrays e objetos embutidos não viram tabela por conversão automática. O critério para decidir o que vira tabela e o que vira jsonb.

  • MongoDB 7
  • PostgreSQL 15
  • mongoexport (Database Tools 100.9)
  • psql 15
Dados & Migrações9 min

Prisma em serverless: resolvendo o timeout do connection pool

Timed out fetching a new connection from the connection pool. (Current connection pool timeout: 10, connection limit: 9)

O pool do Prisma estoura quando cada função serverless abre o próprio conjunto de conexões. O diagnóstico completo e as três correções que aplicamos.

  • Next.js 15.3
  • Prisma 6.5
  • Supabase Postgres 15
  • Vercel · Node 22