Fabrízio de Royes Mello escreveu: > O DISCARD ALL [3], conforme documentação, executa os seguintes > comandos na ordem que segue: > - SET SESSION AUTHORIZATION DEFAULT; > - RESET ALL; > - DEALLOCATE ALL; > - CLOSE ALL; > - UNLISTEN *; > - SELECT pg_advisory_unlock_all(); > - DISCARD PLANS; > - DISCARD TEMP; > > Destes comandos não consegui implementar o DISCARD PLANS (se alguém > souber como faço isso, e se é possível, eu agradeço). > Esse comando veio em conjunto com a funcionalidade de invalidação de planos em funções procedurais. Então, ele *não* pode ser emulado em versões < 8.3.
> Com base nisso tenho uma dúvida (até mais desconfiança que dúvida mesmo) > que tenho é relacionada a essa PL que implementei (em anexo), pois > configurei ela no parâmetro "server_reset_query", assim como o pgbouncer > [2] indica pra fazer com o DISCARD ALL, e apesar de estar em testes com > resultados positivos há algum tempo em nosso ambiente de desenvolvimento > ainda tenho receio de colocar em produção. > Se a sua versão do PostgreSQL mais velha é a 8.2 (sem ela tu não vai conseguir emular a maioria dos comandos do DISCARD ALL), tu podes substituir a primeira consulta por: select setting from pg_settings where name ~ 'server_version_num' Além disso, a melhor maneira de excluir as tabelas temporárias não é excluindo o seu esquema [fazendo alguns testes...] pois ele vai reutilizar o OID do esquema temporário para as tabelas temporárias subsequentes (um bug do pg?). Ao invés disso, remova as tabelas uma a uma (é como o DISCARD TEMP faz). > A documentação do pgbouncer não é grande coisa, por isso estou aqui > cheio de receios... será que estou indo pelo caminho certo ou existe > algum outro "porém" nessa estória??? Ou será que o mais seguro é > aguardar e utilizar o pgbouncer somente em conjunto do PostgreSQL 8.3??? > A versão 8.3 te daria mais segurança mas se você alterar o que disse acima acho que vai funcionar com 8.2. Eu faria um teste de unidade (?) para saber se a função proposta está se comportando de maneira correta. -- Euler Taveira de Oliveira http://www.timbira.com/ _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral