2009/6/15 Euler Taveira de Oliveira <[email protected]>

> 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.
>
>
Eu já desconfiava disso, mas como não tinha certeza ...


> 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'
>
>
Raptei aquele SQL do dbi-link do David Fetter... hehehe... fiz dessa forma
justamente porque tenho algumas instâncias na 8.1, mas as terei por pouco
tempo... irei refatorar a PL depois posto ela novamente...


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).
>
>
Anotado!!!


> 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.
>
>
Concordo... mas irei aguardar as modificações na aplicação pra fazer a
transição da forma mais correta possível...

Obrigado pelas dicas... amanhã eu posto a PL com as alterações... agora
estou pregado!!!

Cordialmente,

-- 
Fabrízio de Royes Mello
>> Blog sobre PostgreSQL: http://fabriziomello.blogspot.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a