Tom Lane wrote:
> Mikko Vierula <mikko(dot)vierula(at)elektroniikkatyo(dot)fi> writes:
> > But all
> > those errors really are because of serialization problems. So shouldn't
> > I be receiving a error stating that?
> I disagree, because I don't think it's reasonable to expect the system
> to make that deduction. I prefer a specific error message telling you
> what's actually wrong ("duplicate key") to a vague error message that
> might in fact be incorrect (leaping to a "can't serialize access"
> In the example you give, the reason that you as an intelligent human can
> classify the error as a serialization problem is that earlier in the
> transaction you searched for the key and didn't find it. Had you not
> done that, you could not argue that "duplicate key" is the wrong message.
PostgreSQL doesn't need to remember the preceding operations
at all in order to judge if a "can't serialize access" error
In Mikko's both examples, Transaction 1 has to see a tuple
which didn't exist at the beginning of the transaction
while checking duplicate error.
In response to
pgsql-bugs by date
|Next:||From: Tom Lane||Date: 2001-12-28 00:21:40|
|Subject: Re: Serializable access giving wrong error messages? |
|Previous:||From: Scott Royston||Date: 2001-12-27 22:28:29|
|Subject: Re: Implicit cast of literal in SQL statements|