Re: Horrible trigger performance after upgrade 8.0.12 -> 8.2.3

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Joseph S <jks(at)selectacast(dot)net>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: Horrible trigger performance after upgrade 8.0.12 -> 8.2.3
Date: 2007-03-20 19:58:25
Message-ID: 16985.1174420705@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Joseph S <jks(at)selectacast(dot)net> writes:
> After upgrading to 8.2.3 INSERTs and UPDATEs on one of my tables became
> incredibly slow. I traced the problem to one of my triggers that calls
> one of my defined functions (that is IMMUTABLE). If I inline the
> function instead of calling it the runtime for my test update drops from
> 10261.234 ms to 564.094 ms. The time running the trigger itself
> dropped from 9749.910 to 99.504.

With no more details than that, I don't see how you expect any useful
comments. Let's see the code. Also, what PG version are you comparing to?

> BTW does make any sense to bother marking trigger functions as STABLE or
> IMMUTABLE?

No, the trigger mechanisms don't pay any attention to that. I can
hardly conceive of a useful trigger that wouldn't be VOLATILE anyway,
since side effects are more or less the point.

regards, tom lane

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Dan Harris 2007-03-21 00:47:30 Determining server load from client
Previous Message Joseph S 2007-03-20 19:26:33 Horrible trigger performance after upgrade 8.0.12 -> 8.2.3