Re: New VACUUM FULL crashes on temp relations

Takahiro Itagaki <itagaki.takahiro@oss.ntt.co.jp>

From: Takahiro Itagaki <itagaki.takahiro@oss.ntt.co.jp>
To: Simon Riggs <simon@2ndQuadrant.com>, pgsql-hackers@postgresql.org
Date: 2010-02-02T05:28:32Z
Lists: pgsql-hackers

Attachments

Takahiro Itagaki <itagaki.takahiro@oss.ntt.co.jp> wrote:

> > TRAP: FailedAssertion("!(typeNamespace == typ->typnamespace)", File:
> > "pg_type.c", Line: 658)

It comes from swapping toast relations:
  DEBUG:  typeNamespace mismatch: 99 (pg_toast) vs. 16386 (pg_toast_temp_2)

AFAICS, the assertion is broken, but the code is correct. We just need to
adjust the expression in the assertion.
Patch attached, including new regression tests for clustering a temp table.

> I see the same assertion failure on 8.4.2, too.

I'll go for backpatcting if the attached fix is correct. Comments welcome.

Regards,
---
Takahiro Itagaki
NTT Open Source Software Center