Re: BUG #5066: plperl issues with perl_destruct() and END blocks

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: BUG #5066: plperl issues with perl_destruct() and END blocks
Дата
Msg-id 20090921170617.GL29793@alvh.no-ip.org
обсуждение исходный текст
Ответ на Re: BUG #5066: plperl issues with perl_destruct() and END blocks  (David Fetter <david@fetter.org>)
Ответы Re: BUG #5066: plperl issues with perl_destruct() and END blocks  (David Fetter <david@fetter.org>)
Список pgsql-bugs
David Fetter escribió:
> On Mon, Sep 21, 2009 at 12:06:30PM -0400, Alvaro Herrera wrote:
> > David Fetter escribió:
> >
> > > Taken literally, that would mean, "the last action before the
> > > backend exits," but at least to me, that sounds troubling for the
> > > same reasons that "end of transaction" triggers do.  What happens
> > > when there are two different END blocks in a session?
> >
> > The manual is clear that both are executed.
>
> So it is, but does order matter, and if so, how would PostgreSQL know?

The fine manual saith

    You may have multiple "END" blocks within a file--they will execute in
    reverse order of definition; that is: last in, first out (LIFO).

But then, why would we care?  We just call the destructor and Perl
ensures that the blocks are called in the right order.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

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

Предыдущее
От: Christine Penner
Дата:
Сообщение: Problem installing Postgres 8.4.1
Следующее
От: Robert Haas
Дата:
Сообщение: Re: BUG #5066: plperl issues with perl_destruct() and END blocks