Postgres and recursion

Поиск
Список
Период
Сортировка
От glenn
Тема Postgres and recursion
Дата
Msg-id 1046315799.9243.12.camel@thor.valhalla
обсуждение исходный текст
Ответы Re: Postgres and recursion  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-novice
Hi all
How well does postgres handle recursion?
I've got this simple function which climbs up a 'selfjoin' tree called
job, and reports back the id of the root of the tree. It seemed to work
in 7.2 (which I'm told doesn't recurse???), but I've just upgraded to
7.3.2 (i.e debians latest) and when I execute it, the server kicks me
off, like so:

vmspj=# select fx_root_job(2);
server closed the connection unexpectedly
    This probably means the server terminated abnormally
    before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.
!#

Should I abandon this approach altogether?
Thanks
Glenn

--------------
create or replace function fx_root_job(int4) returns int4 as '

declare
        x int4;
        returnvalue int4;
begin
        select into x id_parent_ from job
                where id_ = $1;
        if x = $1 or x = 0 then
                returnvalue = $1;
        else
                returnvalue = fx_root_job( x );
        end if;
        return returnvalue;
end;' language 'plpgsql';





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

Предыдущее
От: "Chad Thompson"
Дата:
Сообщение: Re: pq_flush: send() failed: Broken pipe
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Postgres and recursion