Re: [pgbr-geral] Erro deadLock

2014-12-24 Por tôpico Flavio Henrique Araque Gurgel

Pessoal,

o que significa o erro abaixo e o que fazer para evita-lo ?

PGRES_FATAL_ERROR - ERROR: deadlock detected
DETAIL: Process 16306 waits for ShareLock on transaction 110599693
blocked by process 16294.
Process 16294 waits for ShareLock on transaction 110599686 blocked by
process 16306.
SQL Statement: Update ...  PL/pgSQL function


Significa que duas transações concorrentes bloquearam linhas de forma 
cruzada, e não é possível desfazer o bloqueio porque uma transação 
espera pela outra e vice-versa. Quando isso ocorre, o PostgreSQL cancela 
uma das transações aleatoriamente, de forma que a outra consegue terminar.


Para evitar isso, verifique as operações feitas por uma e outra 
transação. Normalmente isso ocorre em UPDATE sobre uma tabela cuja chave 
estrangeira relaciona uma tabela utilizada pela segunda, e a segunda faz 
o mesmo em relação à primeira. Às vezes isso pode ser evitado 
redesenhando as relações entre as tabelas, mas muitas vezes é a forma 
como sua aplicação trabalha que precisa ser repensada.


Se o erro não ocorre com frequência, ou se ocorreu pela primeira vez 
depois de muito tempo, talvez não valha a pena fazer nada.


Enfim, cada caso é um caso, a analisar.


Ambiente:
PostgreSQL 9.1.4


Você está 10 versões atrasado.


Centos 6.3


yum upgrade nessa turma toda rapaz!

[]s
Flavio Gurgel
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Erro deadLock

2014-12-23 Por tôpico Wellington

Pessoal,

o que significa o erro abaixo e o que fazer para evita-lo ?

PGRES_FATAL_ERROR - ERROR: deadlock detected
DETAIL: Process 16306 waits for ShareLock on transaction 110599693 blocked 
by process 16294.
Process 16294 waits for ShareLock on transaction 110599686 blocked by 
process 16306.

SQL Statement: Update ...  PL/pgSQL function


Ambiente:
PostgreSQL 9.1.4
Centos 6.3


Obrigado.
Wellington

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral