Nao tem chave natural nessa tabela?
Em 31/05/2012 20:09, "Marco Aurélio V. da Silva" <[email protected]>
escreveu:

>   Caros,
>
> Não lembro se esse assunto já foi discutido na lista, mas vamos lá. Estou
> desenvolvendo um sistema que terá vários cadastros com numeração sequencial
> gerada pelo sistema, mas preciso evitar ao máximo ter furos na sequência. O
> sistema é multiusuario, e há a possibilidade de vários usuários fazendo
> cadastro ao mesmo tempo.
> A lógica que desenvolvi é o seguinte, uma função (vb.net+npgsql) que pega
> uma determinada tabela e busca qual o maior codigo dela ai a função soma
> mais 1 e adiciona o novo registro, logo a função é composta por dois
> comandos um select para pegar o ultimo codigo, e um insert para inserir a
> nova numeração.
> Fazendo um stress teste na função com 3 usuários, só apos 115 tentativas
> dando enter ao mesmo tempo na tela conseguimos duplicar um número, mas
> fazendo um programa que faz um for de 1 a 200 da função rodando em tres
> maquinas ao mesmo tempo deu mais ou menos uns 30% de duplicidade.
> Adicionando um sleep de 0,1 segundo antes de cada select a duplicidade caiu
> para 15% mas ainda ocorreu.
> Existe alguma possibilidade de melhorar isto sem usar sequence ? A
> sequence me gera o seguinte problema, o usuario entra na tela de cadastro e
> desiste, ai excluo este numero para reaproveitar se ninguem ja tiver
> incluido um numero maior.
> Posso fazer o controle de duplicidade tb, mas ai teria que ficar tratando
> a mensagem de erro.
> Tem alguma outra forma ?
>
> Desde já agradeço a atenção recebida.
>
> Marco Aurélio V. da Silva
> [email protected]
> [email protected]
> msn: [email protected]
> Prodata Inf. e Cadastros LTDA
> (33) 3322-4444
>
> _______________________________________________
> 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