Re: Rows missing from table despite FK constraint - Mailing list pgsql-general

From Tom Lane
Subject Re: Rows missing from table despite FK constraint
Date
Msg-id 8842.1262971716@sss.pgh.pa.us
Whole thread Raw
In response to Re: Rows missing from table despite FK constraint  (Konrad Garus <konrad.garus@gmail.com>)
Responses Re: Rows missing from table despite FK constraint  (Konrad Garus <konrad.garus@gmail.com>)
Re: Rows missing from table despite FK constraint  (Alban Hertroys <dalroi@solfertje.student.utwente.nl>)
List pgsql-general
Konrad Garus <konrad.garus@gmail.com> writes:
> 2010/1/8 Tom Lane <tgl@sss.pgh.pa.us>:
>> Just to confirm, if you try to select any of these rows by ctid, ie
>> � � � �select * from tablename where ctid = '(603713,1)';
>> you get nothing? �What *should* happen is that you get the row if you
>> mention offset 1, 3, or 5, but nothing if you say 2 or 4.

> How about this?

> # select attachment_id from attachment where ctid = '(603713,1)';
>  attachment_id
> ---------------
>       15460683
> (1 row)

> # select attachment_id from attachment where attachment_id = 15460683;
>  attachment_id
> ---------------
> (0 rows)

Oh, so the row *is* there.  What the above says is that you have a
corrupt index on attachment_id, which you should be able to fix via
REINDEX.  However, I'm still a bit confused, because corrupt indexes
don't normally cause a problem for pg_dump (which is just doing SELECT *
or COPY, so the index wouldn't be consulted).  Are the dumps you are
talking about perhaps made with something other than pg_dump?

            regards, tom lane

pgsql-general by date:

Previous
From: Konrad Garus
Date:
Subject: Re: Rows missing from table despite FK constraint
Next
From: Konrad Garus
Date:
Subject: Re: Rows missing from table despite FK constraint