Re: better page-level checksums

Поиск
Список
Период
Сортировка
От Aleksander Alekseev
Тема Re: better page-level checksums
Дата
Msg-id CAJ7c6TNucR2fVuWzfnYb8WZrCmRBaDUXqc=wi5qx0iHnw2RZBg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: better page-level checksums  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: better page-level checksums  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
Hi hackers,

> > Can't we add some extra fork that stores this extra per-page
> > information, and contains this extra metadata
> >
> +1 for this approach. I had observed some painful corruption cases where block storage simply returned stale version
ofa rage of blocks. This is only possible because checksum is stored on the page itself.
 

That's very interesting, Andrey. Thanks for sharing.

> One of my questions is what algorithm(s) we'd want to support.

Should it necessarily be a fixed list? Why not support plugable algorithms?

An extension implementing a checksum algorithm is going to need:

- several hooks: check_page_after_reading, calc_checksum_before_writing
- register_checksum()/deregister_checksum()
- an API to save the checksums to a seperate fork

By knowing the block number and the hash size the extension knows
exactly where to look for the checksum in the fork.

-- 
Best regards,
Aleksander Alekseev



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

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: Replica Identity check of partition table on subscriber
Следующее
От: Nitin Jadhav
Дата:
Сообщение: Re: Report checkpoint progress with pg_stat_progress_checkpoint (was: Report checkpoint progress in server logs)