vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| 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. BTW does make any sense to bother marking trigger functions as STABLE or IMMUTABLE? |
| ||||
| Joseph S <jks@selectacast.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 ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match |