From: | Douglas McNaught <doug(at)mcnaught(dot)org> |
---|---|
To: | "Bima Djaloeis" <bima(dot)djaloeis(dot)uni(at)googlemail(dot)com> |
Cc: | pgsql-novice(at)postgresql(dot)org, pgsql-general(at)postgresql(dot)org |
Subject: | Re: starting a stored procedure+rule AFTER an insert |
Date: | 2007-10-08 13:00:59 |
Message-ID: | 87ve9hsqus.fsf@suzuka.mcnaught.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Bima Djaloeis" <bima(dot)djaloeis(dot)uni(at)googlemail(dot)com> writes:
> I have implemented a stored procedure that writes out the newest DB
> entry on insert, and combined it with a rule.
>
> 1) create function newcache() returns void AS 'newCache', 'newCache' language
> c;
> 2) create rule newcacherule AS on insert to caches do also select newcache();
>
> The problem is that newcacherule fires BEFORE the insert has taken
> place, so effectively, I always just get the 2nd newest entry to
> write into my text file while the newest entry is "stuck in the
> queue" until a new insert come. How can I execute my rule AFTER the
> insert has taken place?
Rules effectively happen at query parse time. You probably want an
AFTER trigger instead.
-Doug
From | Date | Subject | |
---|---|---|---|
Next Message | Merlin Moncure | 2007-10-08 14:18:00 | SPI dumping core on large palloc |
Previous Message | A. Kretschmer | 2007-10-08 13:00:47 | Re: Problem with SELECT |