Em 1 de abril de 2016 13:33, <siste...@mvsoftware.com.br> escreveu: > Pessoal tenho uma função no sistema onde o usuario seleciona varios produtos > e muda por exemplo a localização, > imagine que seja 2mil produtos, neste momento o caixa está vendendo e aí > trava, > isso seria normal ou tem alguma coisa que posso mudar pra não travar o > registro enquanto altera? > > Eu poderia travar no caixa lá é prioridade, pois o cliente já está com o > produto na mão, mas lá é só select. > > Como o PostgreSQL trava essas concorrências?
Para responder esta pergunta são necessárias algumas informações: 1) Qual a versão do PostgreSQL utilizada? 2) Qual o nível de isolação (isolation level) utilizado nos caixas [1]? 3) O comando SELECT que busca o produto no caixa está utilizando a cláusula FOR UPDATE? 4) O processo de venda atualiza o valor de alguma coluna na tabela de produtos? O nível de isolação padrão é READ COMMITED. Neste caso você não teria problemas exceto se há concorrência de UPDATE/DELETE sobre o mesmo registro sendo alterado no cadastro e na venda. [1] http://www.postgresql.org/docs/current/static/sql-set-transaction.html TIAGO J. ADAMI http://www.adamiworks.com _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral