у меня есть ряд запросов, выполняющихся как
DO LANGUAGE plpgsql $$
begin
--запросы
END
commit;
$$;
В частности, внутри подготавливаются prepared функции.
Если функции уже созданы, то запрос вылетает с исключением. Для меня это очень печально. Перехватывать это исключение в программе не вариант.
Пытался вставить перед коммитом EXCEPTION WHEN duplicate_prepared_statement THEN
но postgre все равно ругается на commit;
ERROR: SPI_execute_plan_with_paramlist failed executing query "commit": SPI_ERROR_TRANSACTION
подскажите, что делать?
http://postgresql.ru.net/manu
http://postgresql.ru.net/manual/tutorial-transactions.html