On 09/12/10 13:00, Toby Corkindale wrote:
> Hi,
> Looking at this:
> http://www.postgresql.org/docs/9.0/interactive/plperl-under-the-hood.html
>
> Specifically, the "known limitations" part, I see it says:
> When a session ends normally, not due to a fatal error,
> any END blocks that have been defined are executed.
> Currently no other actions are performed. Specifically,
> file handles are not automatically flushed and objects are
> not automatically destroyed."
>
> So I wondered what implications that has for stored procedures that
> create objects? Will the following code cause a memory leak if called
> many times, due to the $big object never being destroyed?
>
>
> CREATE FUNCTION foobar() RETURNS trigger AS $$
> use Big::Module;
> my $big = Big::Module->new;
> $$ LANGUAGE plperlu
Perhaps I should test first and email later..
I couldn't see any memory leaking at all in some quick experimentation
(on pg 8.4.5).