Re: [pgbr-geral] Limite de procedimentos dentro de uma transação
Pessoal, Dentro de um processo de atualização da aplicação, considerando o seguinte cenário: BEGIN; INSERT UPDATE... CREATE... INSERT... COMMIT ou ROLLBACK; Existe algum limite de procedimentos dentro de uma transação? Considerando que ninguém estará acessando o banco, posso ter algum problema em relação ao tempo que a transação ficará aberta? []s Danilo Não sei se te ajuda, mas quando faço uma conversão de uma tabela com, digamos, 500 mil registros, para o banco de dados, eu crio um contador e a cada mil registros dou um COMMIT e abro novamente com BEGIN. Se eu não fizer assim, depois de uma certa quantidade de registros, a gravação começa a ficar lenta, e cada vez mais lenta. []s Ronei ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Limite de procedimentos dentro de uma transação
Pessoal, Dentro de um processo de atualização da aplicação, considerando o seguinte cenário: BEGIN; INSERT UPDATE... CREATE... INSERT... COMMIT ou ROLLBACK; Existe algum limite de procedimentos dentro de uma transação? Considerando que ninguém estará acessando o banco, posso ter algum problema em relação ao tempo que a transação ficará aberta? []s Danilo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Limite de procedimentos dentro de uma transação
On 07-05-2015 20:29, Danilo Silva wrote: Existe algum limite de procedimentos dentro de uma transação? 2^32-2 comandos que escrevem (como por exemplo, INSERT, UPDATE e DELETE). Comandos SELECT não entram nesta contagem. Considerando que ninguém estará acessando o banco, posso ter algum problema em relação ao tempo que a transação ficará aberta? Transações longas não são recomendadas principalmente se o seu agrupamento de bancos de dados consumir muitos (bilhões) id de transação durante o tempo que a transação permanecer aberta. Normalmente isso pode levar meses ou anos. Para se ter uma ideia, um sistema com 1000 transações/s, 100 transações/s e 10 transações/s levariam, respectivamente, 46 dias, 1 ano 3 meses e 12 anos 8 meses para parar o postgres por falta de id de transação. -- Euler Taveira Timbira - http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Limite de procedimentos dentro de uma transação
Já passei por problemas de executar muitos comandos dentro de uma mesma transação, mas era em situações de atualização automatizada de clientes a 1 ~ 2 anos sem receber atualização de sistema. Devido a grande quantidade de registros que existiam na base de dados era impossível realizar uma atualização completa apenas com uma transação, visto que era modificado estrutura de dados, executado vários updates, inserts, creates, alters, copiados registros de uma estrutura de dados pra uma nova, chegava num certo momento que ficava tudo muito lento, a memória do servidor fica socada e travava tudo... enfim, nessa situação mesmo sem ninguém mais utilizando a base de dados, era impossível executar apenas numa transação, tinha que ir executando em partes. Como já havia previsto isso, projetei o atualizador para que pudesse executar os script's de atualização em transações menores quando ocorresse uma situação dessas. Mas era necessário muitas e muitas operações para chegar a este ponto. Em 7 de maio de 2015 20:29, Danilo Silva danilo.dsg.go...@gmail.com escreveu: Pessoal, Dentro de um processo de atualização da aplicação, considerando o seguinte cenário: BEGIN; INSERT UPDATE... CREATE... INSERT... COMMIT ou ROLLBACK; Existe algum limite de procedimentos dentro de uma transação? Considerando que ninguém estará acessando o banco, posso ter algum problema em relação ao tempo que a transação ficará aberta? []s Danilo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Limite de procedimentos dentro de uma transação
2015-05-08 0:06 GMT-03:00 Euler Taveira eu...@timbira.com.br: On 07-05-2015 23:36, Danilo Silva wrote: Certo, se eu entendi, neste caso um insert gera um id, um update, outro id, um novo insert, outro id, e assim por diante? É o que eu tentei^H^H^H^H^H^H escrevi, não? Euler, eu não entendi a sua resposta de agora, você refere-se a sua resposta anterior, onde fala sobre os 2^32-2 ? []s Danilo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Limite de procedimentos dentro de uma transação
Em 7 de maio de 2015 22:35, Euler Taveira eu...@timbira.com.br escreveu: On 07-05-2015 20:29, Danilo Silva wrote: Existe algum limite de procedimentos dentro de uma transação? 2^32-2 comandos que escrevem (como por exemplo, INSERT, UPDATE e DELETE). Comandos SELECT não entram nesta contagem. Considerando que ninguém estará acessando o banco, posso ter algum problema em relação ao tempo que a transação ficará aberta? Transações longas não são recomendadas principalmente se o seu agrupamento de bancos de dados consumir muitos (bilhões) id de transação durante o tempo que a transação permanecer aberta. Normalmente isso pode levar meses ou anos. Certo, se eu entendi, neste caso um insert gera um id, um update, outro id, um novo insert, outro id, e assim por diante? []s Danilo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Limite de procedimentos dentro de uma transação
On 07-05-2015 23:36, Danilo Silva wrote: Certo, se eu entendi, neste caso um insert gera um id, um update, outro id, um novo insert, outro id, e assim por diante? É o que eu tentei^H^H^H^H^H^H escrevi, não? -- Euler Taveira Timbira - http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral