Re: RES: [firebase-br] Concorrência de Acesso

Campus campus em sinos.net
Qua Mar 21 14:08:22 -03 2007


Mas aí é que está Cantu, num caixa de supermercado por exemplo.

no caixa 1 está passando um carrinho, e já registrou 20 itens.

no caixa 2 tenta vender 1 dos 20 já passados no caixa 1, não vai dar
deadlock na trigger de atualização do saldo ?



----- Original Message ----- 
From: "Carlos H. Cantu (TeamFB)" <listas em warmboot.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, March 21, 2007 1:59 PM
Subject: Re: RES: [firebase-br] Concorrência de Acesso


Saldos de estoque, na minha opinião, devem ser baixados via trigger no
BD e não na aplicação.

Via trigger na tabela de produtos das notas, com um update do tipo:

update produtos set saldo = saldo - new.qtde
where codprod = new.produto;

Com isso, NUNCA o saldo ficará errado.

[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br

DEBW> Continuo achando que isto não é um problema e continuo
DEBW> acreditando que em uma rotina de banco de dados bem pensada e
DEBW> bem implementada não haveria problemas com lock e alocação de
DEBW> registros. Se houver algum problema (não estou dizendo não deve
DEBW> haver) será uma exceção a regra.

DEBW> -----Mensagem original-----
DEBW> De: lista-bounces em firebase.com.br
DEBW> [mailto:lista-bounces em firebase.com.br] Em nome de Renan de Oliveira
DEBW> Enviada em: quarta-feira, 21 de março de 2007 13:11
DEBW> Para: FireBase
DEBW> Assunto: Re: [firebase-br] Concorrência de Acesso

DEBW> Está ok, suponha entao que seja uma baixa do estoque de um produto X
onde os
DEBW> 500 sao a quantidade em estoque e os outros valores sao as vendas.
DEBW> Dá no mesmo!

DEBW> Renan

DEBW> ----- Original Message ----- 
DEBW> From: "Magno System" <magno em speet.com.br>
DEBW> To: "FireBase" <lista em firebase.com.br>
DEBW> Sent: Wednesday, March 21, 2007 12:42 PM
DEBW> Subject: Re: [firebase-br] Concorrência de Acesso


DEBW> Renan de Oliveira disse:

DEBW> Vamos supor o seguinte exemplo.

DEBW> Dois fulanos estao com a mesma tela de pagamento a ser efetuado de um
DEBW> determinado cliente, com saldo a pagar de 500,00
DEBW> fulano1 - pega o saldo a pagar 500 e desconta um pagamento de 200
reais,
DEBW> saldo fica de 300,00
DEBW> fulano 2 - pega o saldo a pagar 500 e desconta um pagamento de 100
reais,
DEBW> saldo fica de 400,00

DEBW> e isso nao pode acontecer, pois o saldo deveria de ser 500 - 200 - 100
=
DEBW> 200,00

DEBW> Pessoal, vamos ser práticos na vida... Como um cliente vai pagar uma
conta
DEBW> em dois caixas ao mesmo tempo ? Se vc vai a um estabelecimento
comercial
DEBW> qualquer e é atendido por um caixa somente ele acessará sua conta.
DEBW> Provavelmente o outro caixa estará inativo ou atendendo outro cliente.
É a
DEBW> velha teoria da tomada elétrica. A bitola de um fio nunca é calculada
DEBW> baseada na hipótese de estarem todas as luzes acesas e todas as
tomadas em
DEBW> uso, embora teoricamente seja possível. Mas convenhamos, o bom senso e
a
DEBW> prática dizem ao contrário. Uma casa mesmo que tenha 30 tomadas,
DEBW> dificilmente terá 10 em uso com aparelhos ligados. Acho que devemos
pensar
DEBW> assim também em nossos sistemas. Bem, pelo menos é a minha opinião.

DEBW> PS. Se alguém tiver alguma informação sobre o tópico que postei (Dados
não
DEBW> gravados em 19/03/2007) será de grande valia.
DEBW> ______________________________________________
DEBW> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
DEBW> Para editar sua configuração na lista, use o endereço
DEBW> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
DEBW> Para consultar mensagens antigas: http://firebase.com.br/pesquisa




DEBW> ______________________________________________
DEBW> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
DEBW> Para editar sua configuração na lista, use o endereço
DEBW> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
DEBW> Para consultar mensagens antigas: http://firebase.com.br/pesquisa

DEBW> ______________________________________________
DEBW> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
DEBW> Para editar sua configuração na lista, use o endereço
DEBW> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
DEBW> Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 268.18.16/729 - Release Date: 21/03/2007
07:52






Mais detalhes sobre a lista de discussão lista