From: | Dan Ports <drkp(at)csail(dot)mit(dot)edu> |
---|---|
To: | Jeff Davis <pgsql(at)j-davis(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov> |
Subject: | Re: Question about SSI, subxacts, and aborted read-only xacts |
Date: | 2012-09-11 01:59:45 |
Message-ID: | 20120911015944.GA48524@csail.mit.edu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Sat, Sep 08, 2012 at 11:34:56AM -0700, Jeff Davis wrote:
> If so, I think we need a documentation update. The serializable
> isolation level docs don't quite make it clear that serializability only
> applies to transactions that commit. It might not be obvious to a user
> that there's a difference between commit and abort for a RO transaction.
> I think that, in S2PL, serializability applies even to aborted
> transactions (though I haven't spent much time thinking about it), so
> users accustomed to other truly-serializable implementations might be
Yes, I agree that this is probably worth mentioning in the
documentation.
It might be worth noting that serializable mode will not cause
read-only transactions to fail to commit (as might be possible in some
optimistic concurrency control systems). However, it might require
other transactions to be aborted to ensure serializability. If the
user aborts the read-only transaction, that won't necessarily happen.
Figure 2 of the aforementioned paper is actually a nice example of
this. The read-only transaction T1 is allowed to commit, but as a
result T2 has to be aborted. If T1 had ABORTed instead of COMMIT, T2
would be allowed to proceed.
Dan
--
Dan R. K. Ports UW CSE http://drkp.net/
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2012-09-11 02:17:23 | Re: Draft release notes complete |
Previous Message | Peter Eisentraut | 2012-09-11 01:05:55 | Re: ossp-uuid Contrib Patch |