Do we still need "log_invalid_page"?

Поиск
Список
Период
Сортировка
От Jacky Leng
Тема Do we still need "log_invalid_page"?
Дата
Msg-id evl1e9$tan$1@news.hub.org
обсуждение исходный текст
Ответы Re: Do we still need "log_invalid_page"?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
As the README for xlog says: There're two kinds of WAL records:
* WAL record that contains enough information to re-generate the entire
contents of a page;

during recovery of these records, blocks are read with:buffer = XLogReadBuffer(reln, blkno, true);

so it can be sure that the block will be read successfully, i.e. buffer
won't be InvalidBuffer

* WAL record provides only enough information to incrementally update the
page;

As all blocks related to these xlog records will be backed up in the xlog
during the first write after checkpoint, and RestoreBkpBlocks will also read
it in with :buffer = XLogReadBuffer(reln, blkno, true);

so it also can be sure that these blocks will be read successfully: because
the fisrt read of it must be in RestoreBkpBlocks, which will reconstruct the
block validly, and none problems in later read.

Then if we come to the path "log_invalid_page",  can I say there must be sth
wrong, and we should PANIC?




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

Предыдущее
От: Stuart Bishop
Дата:
Сообщение: Re: elog(FATAL) vs shared memory
Следующее
От: Kris Kennaway
Дата:
Сообщение: Re: [mux@FreeBSD.org: Re: Anyone interested in improving postgresql scaling?]