Re: ERROR: attempted to delete invisible tuple

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Greg Stark <gsstark(at)mit(dot)edu>
Cc: Bryan Murphy <bmurphy1976(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: ERROR: attempted to delete invisible tuple
Date: 2009-08-17 18:59:41
Message-ID: 5665.1250535581@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Greg Stark <gsstark(at)mit(dot)edu> writes:
> Excluding the cases where our own xid is in the tuple I think the
> relevant cases are either

> xmin aborted or in progress (or in future)
> MOVED_OFF and xvac committed
> MOVED_IN and xvac aborted or is in progress (or in future)

Ah. I hadn't bothered to check the code in detail before asking about
the current XID. Given subsequent data, it seems that current XID must
have moved past xvac while we were wondering about it. This could mean
either corrupted xvac values, or that the crash caused current XID to go
backwards (suggesting loss of both the current pg_control and a big
chunk of WAL). Since multiple tuples on different pages were involved,
I'm inclined to believe the second theory.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bob Gobeille 2009-08-17 19:15:55 Re: psql command line editor
Previous Message Nuno Mota 2009-08-17 18:58:11 Re: plpython return setof and yield