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

Re: New VACUUM FULL crashes on temp relations

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
Cc: Simon Riggs <simon(at)2ndQuadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: New VACUUM FULL crashes on temp relations
Date: 2010-02-02 19:16:17
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
I wrote:
> After tracing through it, the problem is that rebuild_relation() assumes
> toast tables are always in PG_TOAST_NAMESPACE; which has not been true
> since 8.3.  CLUSTER has been renaming temp toast tables into the wrong
> namespace right along.  Without the assert to call attention to it, who
> knows how long it would've taken to notice :-(

No, on closer inspection the bug was introduced here:
so 8.3 was OK.  In a non-asserting build the only consequence would have
been that checks for conflicting names were done in the wrong namespace.
Given the improbability of a conflict, we could have gone a very long
time before noticing the problem.  But it was still wrong.

			regards, tom lane

In response to

pgsql-hackers by date

Next:From: Tom LaneDate: 2010-02-02 19:33:30
Subject: Re: [HACKERS] Re: Faster CREATE DATABASE by delaying fsync (was 8.4.1 ubuntu karmic slow createdb)
Previous:From: Magnus HaganderDate: 2010-02-02 19:10:26
Subject: Re: [COMMITTERS] pgsql: Define INADDR_NONE on Solaris when it's missing.

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