Re: Reliable and fast money transaction design - Mailing list pgsql-general

From Tom Lane
Subject Re: Reliable and fast money transaction design
Date
Msg-id 6247.1188498116@sss.pgh.pa.us
Whole thread Raw
In response to Re: Reliable and fast money transaction design  (Andrew Sullivan <ajs@crankycanuck.ca>)
Responses Re: Reliable and fast money transaction design  (Andrew Sullivan <ajs@crankycanuck.ca>)
List pgsql-general
Andrew Sullivan <ajs@crankycanuck.ca> writes:
> I think there's a reason why SERIALIZABLE could be slower, and that
> is that it's waiting on possibly-conflicting (but not actually
> conflicting) commits to happen in READ COMMITTED mode.  No?  Won't it
> have to check those things when it COMMITs?

SERIALIZABLE mode does not introduce any waits that wouldn't happen
anyway.  It only affects what happens after you stop waiting.  The
sequence is that if you go to update or delete a row, and you see
there's already an uncommitted change on the row, you have to wait
for that transaction to commit or roll back.  If it rolls back,
you can proceed.  If it commits, then either throw an error (in
SERIALIZABLE mode) or attempt to update/delete the newest tuple
version (in READ COMMITTED mode).

            regards, tom lane

pgsql-general by date:

Previous
From: Gregory Stark
Date:
Subject: Re: Out of Memory - 8.2.4
Next
From: Andrew Sullivan
Date:
Subject: Re: date of next Version 8.2 release