Leandro,

Boa tarde!
A assinatura do seu email não condiz com esta lista.

;-)



" Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos"

Att.
----------------------------------------------------------------------------
Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
[email protected]
----------------------------------------------------------------------------
Broker Nestlé do Brasil S/A
Batista Coml. Log. Representações Ltda.
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140

-----Mensagem original-----
De: [email protected]
[mailto:[email protected]] Em nome de Leandro
Henrique Pereira Neto
Enviada em: sexta-feira, 21 de agosto de 2009 13:52
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] SET DEADLOCK_PRIORITY


Mozart Hasse escreveu:
> Olá,
>
> Por acaso o Postgres tem o equivalente a este comando do SQL Server? Ele
se
> aplica à conexão e indica qual a prioridade do processo corrente caso ele
se
> envolva num deadlock. Eu preciso *muito* ter o controle sobre isso para
poder
> rodar alguns processos de baixa prioridade sem *nunca* comprometer
> transações de processos críticos.
> Respostas antecipadas:
> * Não, tentar rodar de novo a transação no processo crítico é desastroso,
> tanto em desempenho quanto em esforço de programação.
> * Não, eu não posso evitar completamente o deadlock entre esses dois
> processos (baixa x alta prioridade). Já sacrifiquei tudo o que poderia de
> paralelismo fazendo os processos de alta prioridade não causarem deadlocks
> entre si.
> * Não, eu não vou esquartejar minhas transações em pedaços menores tão
> cedo, se é que algum dia eu vou fazer isso só por um capricho do Postgres.
>
> Atenciosamente,
>
> Mozart Hasse
>
>   
Mozart,

Sei que não é a resposta esperada, mas a verdade a vezes doí, deadlock é 
problema de lógica da aplicação. Você pode ter milhares de transações em 
paralelo e não ter deadlock, assim como ter somente dois processos e 
gerar deadlock. Para resolver problemas deadlock não é necessário 
sacrificar paralelismo e sim rever a lógica de aquisição de locks da 
aplicação.
Uma dica simples é adquirir os locks nos objetos sempre na mesma ordem.

Para defender o postgresql posso ter informar que por exemplo o bancos 
de dados bam-bam do mercado (Oracle) não tem comando similar a este e 
isto não é um problema.

Leandro.

"Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO),
empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é
enviada exclusivamente a seu destinatário e pode conter informações
confidenciais, protegidas por sigilo profissional. Sua utilização
desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a
recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente,
esclarecendo o equívoco."

"This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a
government company established under Brazilian law (5.615/70) -- is directed
exclusively to its addressee and may contain confidential data, protected
under professional secrecy rules. Its unauthorized use is illegal and may
subject the transgressor to the law's penalties. If you're not the
addressee, please send it back, elucidating the failure."
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a