Re: On duplicate ignore - Mailing list pgsql-general

From Lincoln Yeoh
Subject Re: On duplicate ignore
Date
Msg-id 20120120111259.736D61A7958A@mail.postgresql.org
Whole thread Raw
In response to Re: On duplicate ignore  (Florian Weimer <fweimer@bfk.de>)
List pgsql-general
At 04:27 PM 1/20/2012, Florian Weimer wrote:
>* Lincoln Yeoh:
>
> >>If you use serializable transactions in PostgreSQL 9.1, you can
> >>implement such constraints in the application without additional
> >>locking.  However, with concurrent writes and without an index, the rate
> >>of detected serialization violations and resulting transactions aborts
> >>will be high.
> >
> > Would writing application-side code to handle those transaction aborts
> > in 9.1 be much easier than writing code to handle transaction
> > aborts/DB exceptions due to unique constraint violations? These
> > transaction aborts have to be handled differently (e.g. retried for X
> > seconds/Y tries) from other sort of transaction aborts (not retried).
>
>There's a separate error code, so it's easier to deal with in theory.

Is there a simple way to get postgresql to retry a transaction, or
does the application have to actually reissue all the necessary
statements again?

I'd personally prefer to use locking and selects to avoid transaction
aborts whether due to unique constraint violations or due to
serialization violations.

But I'm lazy ;).

Regards,
Link.


pgsql-general by date:

Previous
From: Lincoln Yeoh
Date:
Subject: Numerous prepared transactions?
Next
From: Florian Weimer
Date:
Subject: Re: On duplicate ignore