#801

Adicione uma FK a uma tabela grande de produção sem bloquear

Uma tabela grande de produção precisa de uma chave estrangeira. A adição comum pega um bloqueio exclusivo — as leituras e gravações ficam bloqueadas enquanto ela varre. O truque são dois passos: primeiro pendure a chave com «ainda não valide» (instantâneo, não bloqueia os gravadores), depois execute a validação contra as linhas antigas em um comando separado (sem bloqueios de gravação). Construa parents e children, insira algumas linhas. Adicione uma chave estrangeira children_parent_id_fkey a children da coluna parent_id para parents(id) sem validação imediata. Depois execute a validação contra essa mesma chave — ela deve ficar marcada como validada.

Apenas CREATE/ALTER/DROP — não é preciso um SELECT no final.

Entre para enviar

O resultado da sua consulta aparecerá aqui

Sem esquema inicial

Esta tarefa não inclui tabelas iniciais: você vai criá-las com CREATE TABLE.