"Kristian Eide" <kreide(at)online(dot)no> writes:
> ERROR: query rewritten 10 times, may contain cycles
> It would seem that my WHERE clause is not checked before the action is run.
No, the WHERE clause is essentially transformed into part of the rule
query. You can't ever write a rule of the form
ON UPDATE TO b DO UPDATE b ...
because it *will* be an infinite loop, condition or no condition.
Consider using a trigger instead.
regards, tom lane