Skip site navigation (1) Skip section navigation (2)

Re: A few beginner's questions concerning concurrency control

From: Karsten Hilbert <Karsten(dot)Hilbert(at)gmx(dot)net>
To: "'pgsql-general(at)postgresql(dot)org'" <pgsql-general(at)postgresql(dot)org>
Subject: Re: A few beginner's questions concerning concurrency control
Date: 2004-06-29 09:51:41
Message-ID: 20040629115141.G559@hermes.hilbert.loc (view raw or flat)
Thread:
Lists: pgsql-general
> Question #3
> =========
> In some places it is said that a transaction that only reads does not lock
> any table or row, and is never blocked. But if a transaction T1 modifies a
> row r, and at the same time transaction T2 selects r, then T2 need to wait
> until T1 finishes (as T1 might have deleted the row, or modified it in a way
> that would cause T1 not to need it, as the row does not satisfy T2?s WHERE
> clause).
The answer lies in the application of MVCC. You already said above
that each transaction sees tuples as if it ran all by itself
(which is only true for some of the transaction isolation levels).
Aborts (if attempts to write to changed data occur) are involved.

Karsten
-- 
GPG key ID E4071346 @ wwwkeys.pgp.net
E167 67FD A291 2BEA 73BD  4537 78B9 A9F9 E407 1346

In response to

pgsql-general by date

Next:From: Yoram BibermanDate: 2004-06-29 09:55:50
Subject: A few beginner's questions concerning concurrency control
Previous:From: Najib Abi FadelDate: 2004-06-29 07:47:45
Subject: dividing time ??

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group