Re: How can I find a broken row in a table

Поиск
Список
Период
Сортировка
Искать
От
Tom Lane
Тема
Re: How can I find a broken row in a table
Дата
Msg-id
8600.1271427828@sss.pgh.pa.us
Ответ на
Список
Дерево обсуждения
How can I find a broken row in a table Khangelani Gama <Khangelani.Gama@ucs-software.co.za>
Re: How can I find a broken row in a table "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Re: How can I find a broken row in a table Tom Lane <tgl@sss.pgh.pa.us>
Khangelani Gama  writes:
> Please help me, I am using PostgreSQL 7.3.4 running on Redhat5

> there is a table that has a broken row, but now I don't know which one
is broken. the table has about 20974 pages. is there a command to find
this?

You have to use divide-and-conquer.  Try

	select ctid from table limit N;

and vary N until you find the largest value that *doesn't* produce an
error.  The block number in the last ctid from that query is the block
before the bad one, or possibly a small number of blocks before the bad
one if there are some totally-empty blocks.

			regards, tom lane
В списке pgsql-admin по дате отправления
От: Kevin Grittner
Дата:
От: Kevin Grittner
Дата:
FAQ