Dimitri Fontaine wrote:
> Le 31 mai 09 à 18:21, Tom Lane a écrit :
>> You could maybe make this work by executing your own transaction
>> to do it, but I really have to wonder if it's a good idea. One
>> point to think about is that elog(ERROR) still means elog(FATAL)
>> at this point, so any brokenness in the queries you're trying to
>> prepare will result in locking all users out of the database.
>
> Yeah that's a pretty good foot gun, yet another one. But
> preprepare.at_init is optional and defaults to off. If you broke it all,
> you can turn it off again and reload.
Maybe you could set a callback to be called during the first transaction
in InitPostgres ... in full knowledge that if it fails, people will be
locked out of the database.
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.