On 08-09-2015 16:59, Eurides Baptistella wrote:
Percebam que o update ficou aguardando a primeira transação.
Porque o update na tabela produtoestoque é mantido em waiting?
Porque a trigger manteve o lock (ExclusiveLock) sobre a tabela de histórico?

O Postgres bloqueia toda tupla para garantir que a chave não seja alterada (mesmo que o seu UPDATE não altere a chave).

Utilizo PostgreSQL 9.2.4

Essa é uma limitação conhecida (até a 9.2). A partir do 9.3, isso foi resolvido com uma nova sintaxe que bloqueia transações se, e somente se, a chave for alterada (colunas que não participam da FK não mais bloqueiam transações -- como é o seu caso). Portanto, atualize para versão 9.3 ou superior que não haverá o bloqueio para este caso.


--
   Euler Taveira                   Timbira - http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a