Re: Understanding transactions

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Jonathan Gardner <jgardner(at)jonathangardner(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Understanding transactions
Date: 2004-06-04 01:18:55
Message-ID: 20040604011855.GB4742@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Jun 03, 2004 at 05:38:21PM -0700, Jonathan Gardner wrote:

> Do you know of good resources on learning how transactions are implemented
> in PostgreSQL? Should I just peruse the code? Which files are most
> relevant?

backend/access/transam/xact.c (high level transaction status) and
backend/utils/time/tqual.c (low level tuple visibility test --- this is
hard to read and understand) and its respective header files are the most
relevant. See also htup.h about "heap tuples," specially heap tuple
headers and the games with Xmin, Xmax, Cmin and Cmax.

Not sure about other literature. Make sure you understand how MVCC
works before reading the code ...

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Y dijo Dios: "Que sea Satanás, para que la gente no me culpe de todo a mí."
"Y que hayan abogados, para que la gente no culpe de todo a Satanás"

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Christopher Kings-Lynne 2004-06-04 01:45:57 Re: [PATCHES] dollar quoting
Previous Message Gaetano Mendola 2004-06-04 01:15:47 Re: PageGetMaxOffsetNumber on uninitialized pages