No Postgres, essa consulta trava films
para leituras e/ou gravações?
CREATE TABLE films2 AS
TABLE films;
No Postgres, essa consulta trava films
para leituras e/ou gravações?
CREATE TABLE films2 AS
TABLE films;
Não, não cria um bloqueio de leitura ou gravação na tabela de filmes, pois isso cria ACCESS SHARE LOCK;
para testar isso abra duas sessões
na sessão um execute este comando
então na segunda sessão execute este comando
Se você precisar bloquear a tabela de filmes, precisará emitir um bloqueio assim
isso bloqueará a tabela de atualizações, mas não a leitura ...
NOTA Os bloqueios de compartilhamento de acesso bloqueiam qualquer transação que tente adquirir bloqueios EXCLUSIVOS de ACESSO, como DROP Films etc...