[sisyphus] течёт psql?
REAL
root на mmedia2.kemsu.ru
Чт Апр 14 05:01:32 UTC 2011
14.04.2011 11:50, Дмитрий Дегтярев пишет:
> В Postgres Хранимые процедуры транзакционны поэтому каждая строка есть
> отдельная транзакция.
Насколько я помню, это зависит от параметров соединения. По крайней
мере, так в Oracle и DB2, так, по идее, вообще по стандарту, если не
ошибаюсь. Если параметр autocommit установлен в false, то все
процедуры идут одной транзакцией вплоть до commit, rollback или
закрытия соединения.
>> А нельзя ли сделать без реконнектов, т.е. один коннект, а транзакций
>> много? Я в psql ни в зуб ногой, но вообще-то нормальные СУБД обязаны
>> уметь такое.
>>
> Так и делаю, но почему то съедает память.
Вот от этого и мои подозрения, что отключен autocommit. Или, как
вариант, можно перед каждым инсертом поиграться со времем ожидания
(должно быть что-то вроде аналога sleep в shell).
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
Подробная информация о списке рассылки Sisyphus