Re: [SQL] Duplicate tuples with unique index

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Palle Girgensohn <girgen(at)partitur(dot)se>, Patrik Kudo <kudo(at)partitur(dot)se>, "pgsql-sql(at)postgreSQL(dot)org" <pgsql-sql(at)postgreSQL(dot)org>
Subject: Re: [SQL] Duplicate tuples with unique index
Date: 2000-01-25 20:08:46
Message-ID: 200001252008.PAA20686@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

> Palle Girgensohn <girgen(at)partitur(dot)se> writes:
> > Unfotunately, it doesn't quite work:
>
> > pp=> vacuum analyze;
> > NOTICE: Rel pg_statistic: TID 1/93: OID IS INVALID. TUPGONE 0.
> > VACUUM
> > pp=> delete from pg_statistic;
> > ERROR: heap_delete: (am)invalid tid
>
> Ugh. Yup, your pg_statistic table is corrupted all right.
>
> What you may have to do is pg_dump that database, destroydb/createdb,
> and reload.
>
> I have a possible shortcut for you, but I *strongly* suggest that you
> pg_dump first in case it doesn't work! After making your backup dump,
> stop the postmaster and truncate the broken database's pg_statistic
> file to zero length:
> cp /dev/null .../data/base/yourdb/pg_statistic
> Then restart the postmaster and see if you can vacuum analyze the
> broken database. If so, you are good to go; if not, it's time to
> reload that database.
>

Running pg_upgrade is another option.

--
Bruce Momjian | http://www.op.net/~candle
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Bruce Momjian 2000-01-25 22:35:32 Re: [HACKERS] Re: [SQL] DISTINCT ON: speak now or forever hold your peace
Previous Message Tom Lane 2000-01-25 17:18:21 Re: [SQL] Problem with large tuples.