Boa tarde pessoal. Hoje pela primeira vez me deparei com problemas de deadlock no meu servidor.
A princípio nada mudou na aplicação e temos tido o mesmo volume de demanda então fiquei realmente surpreso. Recebo mensagem como esta abaixo no log ao mesmo tempo que o load do servidor salta de 0.90 para 4.xx e daí pra frente só piora: Jun 30 11:04:10 utiuxsrv1 postgres[817]: [5656-1] ERROR: deadlock detected Jun 30 11:04:10 utiuxsrv1 postgres[817]: [5656-2] DETAIL: Process 817 waits for ShareLock on transaction 733695014; blocked by process 794. Jun 30 11:04:10 utiuxsrv1 postgres[817]: [5656-3] Process 794 waits for ShareLock on transaction 733695097; blocked by process 817. Recorrendo à documentação vi que a checagem por deadlock pode degradar um pouco a performance. Resolvi alterar de 1.000 para 10.000 o deadlock_timeout para não ter checagens "desnecessárias" por deadlocks, mas também tenho receio de tornar ela insensível quando for realmente necessária. Ao mesmo tempo também otimizei meus logs, jogando a partir de agora para outro disco na máquina e trazendo algum detalhamento a mais pois acredito que algo na minha aplicação esteja causando isso, não sei ao certo, mas por exemplo chamando indevidamente uma trigger ou algo do gênero. O servidor é um quad core rodando FreeBSD 7.1 e estou rodando o PostgreSQL 8.1.15 compilado através do ports. Gostaria de saber se vocês tem alguma outra recomendação, pois mesmo assim ainda continuo com problemas, quando começo a passar de 5 clientes conectados começam a surgir os deadlocks, sendo que até ontem (com deadlock_timeout =1000 inclusive) esse servidor segurava 20 e poucos clientes. Com tudo isso o que está me sobrando mesmo é ficar observando logs e o load do sistema. Um abraço e obrigado. -- Fernando França linux user #263682 gtalk: ffranca at bsd com br skype: fernando_desconstruindo http://desconstruindo.eng.br http://www.cbpf.br/~lsd http://www.rnp.br/keyserver/pks/lookup?search=0xB5E21164 Por favor considere o meio ambiente antes de imprimir esta mensagem. S'il vous plaît à l'environnement avant d'imprimer ce message. Please consider the environment before printing this message. _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
