| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | jd(at)commandprompt(dot)com |
| Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Markus Wanner <markus(at)bluegap(dot)ch>, pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: determine snapshot after obtaining locks for first statement |
| Date: | 2009-12-17 18:13:05 |
| Message-ID: | 4765.1261073585@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
"Joshua D. Drake" <jd(at)commandprompt(dot)com> writes:
> What is needed here is a layman's context of what isolation modes are
> good for what type of operation. Neither your explanation or Tom's is
> particularly useful except to say, "Crap, I might be screwed but I don't
> know if I am... how do I find out?"
If we had a simple way to characterize that, we'd not be having this
discussion :-(
One possibility is to try to list the risky cases. So far I can think
of:
* updates using a WHERE clause that tests columns being changed by other
transactions
* updates using subqueries/joins so that the result depends on other rows
besides the one directly updated/deleted, and those other rows are
subject to concurrent changes
But I'm not sure this is a complete list, and an incomplete one might do
more harm than good ...
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Kevin Grittner | 2009-12-17 18:16:57 | Re: determine snapshot after obtaining locks for first statement |
| Previous Message | Kevin Grittner | 2009-12-17 18:12:02 | Re: determine snapshot after obtaining locks for first statement |