From: | Martijn van Oosterhout <kleptog(at)svana(dot)org> |
---|---|
To: | Gordon <gordon(dot)mcvey(at)ntlworld(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Determining weather a query fired a trigger |
Date: | 2008-04-08 15:08:49 |
Message-ID: | 20080408150849.GE31397@svana.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Tue, Apr 08, 2008 at 07:03:07AM -0700, Gordon wrote:
> But I do have one concern regarding performance. The tsvector only
> needs to be updated if the title, summary, or keywords fields have
> changed. If they are the same after an update then there is no need
> to run them. Doing so would only cause a new tsvector to be generated
> when it wasn't necessary.
The usual trick is to check if the fields changed:
IF OLD.title != NEW.title OR OLD.summary != NEW.summary OR ... THEN
update_tsvector()
END
> So what I want to know is, is there a way to tell if executing a query
> caused a trigger to fire? I don't need anything fancy like notify
> and listen, I just want to see what the database is doing for testing
> purposes. For example by looking at the logs and seeing what activity
> was caused by a given query. Does this stuff get logged?
You can access the string sent by the client, but that won't help you
if the trigger was triggered within a stored procedure.
Have a nice day,
--
Martijn van Oosterhout <kleptog(at)svana(dot)org> http://svana.org/kleptog/
> Please line up in a tree and maintain the heap invariant while
> boarding. Thank you for flying nlogn airlines.
From | Date | Subject | |
---|---|---|---|
Next Message | otakarek | 2008-04-08 15:12:39 | Trouble with foreign key |
Previous Message | Alvaro Herrera | 2008-04-08 15:08:35 | Re: plperlu and perl 5.10 |