[firebase-br] Transaction

Carlos Fernando von Groll mameluke em pop.com.br
Ter Dez 21 02:42:07 -03 2004


Oi, Marlon!

Como é definida a chame primária da tabela?

Generators não são incluídos no escopo de uma transação, enquanto que o método de
pegar o último e somar + 1 está. Se dois clientes pegarem o mesma linha como
referência para a próxima chave, tá feita a caca...

Porque não usá-los?

Eu tenho visto muita gente preocupada com o desperdício de números na seqüência
gerada, o que, no meu entender, é o mesmo que preocupar-se com o consumo de palitos
em um banquete, haja visto que um simples integer contém mais de quatro bilhões de
números.





> Olá colegas,
>
> Mais uma vez venho pedir a ajuda de vocês.
> É o seguinte tenho uma rotina no sistema que gera lançamentos
> automáticamente, quando está lançando em dois computadores ao mesmo
> tempo acontece o seguinte erro:
> Lock conflict on wait transaction deatlock. Update conflicts with
> concorrent update.
>
> Na tabela de lançamento tem uma trigger que chama uma stored procedure
> que pega o ultimo número do lançamento e soma mais um (um auto-incremento).
>
> A minha transaction ta configurada para read_committed, rec_version e
> nowait.
>
> Fiz uma aplicação teste utilizando generetors, dai não acontece o erro.
> So que não posso utilizar generators, será que existe alguma
> configuração no banco ou na transaction para resolver este problema?
>
> Desde já agradeço a atenção,
> Marlon
>
>
>
> --
> No virus found in this outgoing message.
> Checked by AVG Anti-Virus.
> Version: 7.0.296 / Virus Database: 265.6.0 - Release Date: 17/12/2004
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>
>





Mais detalhes sobre a lista de discussão lista