Re: pg_rawdump

Поиск
Список
Период
Сортировка
От Stephen R. van den Berg
Тема Re: pg_rawdump
Дата
Msg-id 20101021070618.GA12860@cuci.nl
обсуждение исходный текст
Ответ на Re: pg_rawdump  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: pg_rawdump  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Robert Haas wrote:
>On Wed, Oct 20, 2010 at 5:30 PM, Stephen R. van den Berg <srb@cuci.nl> wrote:
>> Ideal would be: put the table-oid inside the header of each page
>> (either in the official header, or in the special area).
>> This way even lost blocks can be correlated to the same table.
>> I'd still vote for the latest known table definition in the first
>> page. ?It's by no means perfect, but it will help 99% of all
>> salvage attempts by an order of magnitude.

> and break on-disk compatibility just to make it easier to

If it's inserted in the "special" area, it will not break any
compatibility.

>I don't think we should shrink the amount of usable space by 4 bytes
>per block

Instead of putting it in every page, it could be inserted (say) once
every megabyte (if done in the special area) to avoid excessive
overhead.

>I'm pretty dubious about the proposal to stuff an otherwise-useless
>metapage in every heap, too.

The information is supposed to go in the special area, so it will not
be an extra page.

>  If you have many small tables, you just
>doubled your disk utilization 

For small tables, the table description typically is small as well,
so in the common case it all will still fit in one page.

>- worse than that, maybe, if some of
>them are empty.

An empty table does not contain any critical information which needs
to be restored (by definition :-); so the code that inserts the
table definition in the special area could easily be instructed *not*
to write out this information unless the table actually has entries.

>  If we needed a metapage anyway and had extra space to
>play with, stuffing some useful forensic information in there might be
>worthwhile, but I have a hard time thinking that forensics alone is a
>sufficient justification for such a change.

The "change" could easily be made backward compatible to all on disk
formats which support the special area pointer (I'm not sure how far
back that is).
-- 
Stephen.

For children with short attention spans: boomerangs that don't come back.


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: Domains versus arrays versus typmods
Следующее
От: Dimitri Fontaine
Дата:
Сообщение: Re: Extensions, this time with a patch