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

Re: A strange Vacuum error ...

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Dave Smith <dave(dot)smith(at)candata(dot)com>
Cc: pgsql <pgsql-general(at)postgresql(dot)org>
Subject: Re: A strange Vacuum error ...
Date: 2004-01-29 17:02:45
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-general
Dave Smith <dave(dot)smith(at)candata(dot)com> writes:
> I am running 7.2.4 and when running a vacuum on my database I get 
> NOTICE:  Child itemid in update-chain marked as unused - can't continue
> repair_frag
> ERROR:  No one parent tuple was found
> vacuumdb: vacuum  import failed

> How do I fix this?

I believe this error will go away once the problematic tuple is older
than the oldest running transaction.  Find which client is sitting on a
longstanding open transaction and kill it ...

We later realized that this shouldn't be an error condition at all,
since it can happen in corner cases like the one you have.  But the fix
was not back-patched as far as 7.2.*.  If you can't move to 7.3 or 7.4
soon, you might consider trying to back-patch it yourself:

2002-08-13 16:14  tgl

	* src/backend/commands/vacuum.c: Fix tuple-chain-moving tests to
	handle marked-for-update tuples correctly (they are not part of a
	chain).  When failing to find a parent tuple in an update chain,
	emit a warning and abandon repair_frag, but do not give an error as
	before.  This should eliminate the infamous 'No one parent tuple
	was found' failure, which we now realize is not a can't-happen
	condition but a perfectly valid database state.  Per recent
	pghackers discussion.

			regards, tom lane

In response to

pgsql-general by date

Next:From: Juan Carlos DiezDate: 2004-01-29 17:46:08
Subject: Help: System requirements for postgresql 7.4.1
Previous:From: Alberto MarianiDate: 2004-01-29 16:27:51
Subject: How to...

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