Search Postgresql Archives

Re: trigger speed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



A statement level trigger is basically a notification that the table has been touched. You do not have access to the new or old tables. You can also write a DO ALSO rule on the table, which will accomplish what you want.

Joseph Shraibman wrote:
I have a trigger that updates a count table, based on status. The count table looks like this:

key  status  count
a        1     300
a        2     400
b        1     100
b        2     200

The problem is that for large updates when I do "UPDATE table SET status = 1 WHERE status = 2 and key = 'a';" the row level trigger fires for each row updated, decrementing the a 2 row and incrmenting the a 1 row. For large updates this really slows things down.

Question #1: how do I speed this up? I need a way to run a trigger on all rows at once.

Q #2: how do satement level triggers work? The examples in the pg docs only show row level triggers.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux