Simon Riggs <simon.ri...@enterprisedb.com> writes: > OK, I see what you mean. There are 2 types of transaction, one that > reads inside the transaction, one that decides what value to use some > other way.
> So now we have 2 cases, both of which generate uniqueness violations, > but only one of which might succeed if retried. The patch does cover > this, I guess, by saying be careful, but I would be happier if we can > also add > "this is thought to occur only with multiple unique constraints and/or > an exclusion constraints" Um, what's that got to do with it? The example in read-write-unique-4.spec involves only a single pkey constraint. We could add something trying to explain that if the application inserts a value into a constrained column based on data it read earlier, then any resulting constraint violation might be effectively a serialization failure. regards, tom lane