| 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: | Whole Thread | Raw Message | 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 |