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

Re: NOLOGGING option, or ?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)surnet(dot)cl>
Cc: Simon Riggs <simon(at)2ndquadrant(dot)com>,Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Greg Stark <gsstark(at)mit(dot)edu>,Neil Conway <neilc(at)samurai(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: NOLOGGING option, or ?
Date: 2005-06-01 18:24:39
Message-ID: 17405.1117650279@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Alvaro Herrera <alvherre(at)surnet(dot)cl> writes:
> On Wed, Jun 01, 2005 at 06:55:46PM +0100, Simon Riggs wrote:
>> We're holding the table lock and will continue to do so until end of
>> transaction. No transaction with an earlier id will ever see the data we
>> load because of the lock.

> Suppose you load half the tuples and the plug is pulled.  After
> recovery, you have half-load of tuples that are visible to everyone.
> This is a no-no.

Simon is expecting that the loaded tuples are guaranteed to be erased
(by table truncation) during recovery.  As I just noted I'm unconvinced
of the safety of doing truncations during recovery, so I'd prefer not
to depend on that.

The scenario I was thinking of was different: you load pre-frozen
tuples, commit, and thereby release the table lock.  Now the tuples
are visible to transactions that started before you did; that's what
violates MVCC.

			regards, tom lane

In response to

Responses

pgsql-hackers by date

Next:From: Marc G. FournierDate: 2005-06-01 18:40:22
Subject: Re: Google's Summer of Code ...
Previous:From: Jonah H. HarrisDate: 2005-06-01 18:19:46
Subject: Re: Google's Summer of Code ...

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