Re: storing intermediate results in recursive plpgsql functions

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: storing intermediate results in recursive plpgsql functions
Дата
Msg-id 16694.1015349838@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: storing intermediate results in recursive plpgsql  (Vince Vielhaber <vev@michvhf.com>)
Список pgsql-general
Vince Vielhaber <vev@michvhf.com> writes:
> So if the function is executed in a transaction and the transaction
> ends when the function does, doesn't that mean the lock is released
> when the function ends?

But the transaction *doesn't* end when the function does.

The function must have been called from some SQL query (eg, a SELECT)
and there is an explicit or implicit transaction wrapped around every
query issued by an application.  The earliest the lock can possibly be
released is when the current application-given query ends.  If the query
is inside an explicit BEGIN/COMMIT block then the lock will be held till
you COMMIT or ROLLBACK.

Feel free to propose better wording for that part of the plpgsql docs...

            regards, tom lane

В списке pgsql-general по дате отправления:

Предыдущее
От: Jean-Michel POURE
Дата:
Сообщение: Re: database problem..
Следующее
От: "Pirtea Calin"
Дата:
Сообщение: Re: descending index