Re: Remembering bug #6123

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Cc: pgsql-hackers@postgresql.org
Date: 2012-01-13T21:41:37Z
Lists: pgsql-hackers
"Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:
> I'm also fine with generating an error for such dirty tricks, and I
> agree that if that's indeed possible we should make the message
> general enough to cover that case.  Nothing comes to mind at the
> moment, but I'll think on it.

What do you think of

ERROR: tuple to be updated was already modified by an operation triggered by the UPDATE command
HINT: Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows.

(s/update/delete/ for the DELETE case of course)

The phrase "triggered by" seems slippery enough to cover cases such as a
volatile function executed by the UPDATE.  The HINT doesn't cover that
case of course, but we have a ground rule that HINTs can be wrong.

			regards, tom lane