Re: prevent immature WAL streaming
От | Bossart, Nathan |
---|---|
Тема | Re: prevent immature WAL streaming |
Дата | |
Msg-id | E063C45C-BD04-44B7-82A1-F7931D92D24C@amazon.com обсуждение исходный текст |
Ответ на | Re: prevent immature WAL streaming (Alvaro Herrera <alvherre@alvh.no-ip.org>) |
Ответы |
Re: prevent immature WAL streaming
|
Список | pgsql-hackers |
On 9/17/21, 1:32 PM, "Alvaro Herrera" <alvherre@alvh.no-ip.org> wrote: > On 2021-Sep-17, Bossart, Nathan wrote: > >> I gave the patch a read-through. I'm wondering if the >> XLOG_OVERWRITE_CONTRECORD records are actually necessary. IIUC we >> will set XLP_FIRST_IS_ABORTED_PARTIAL on the next page, and >> xlp_pageaddr on that page will already be validated in >> XLogReaderValidatePageHeader(). Does adding this new record also help >> ensure the page header is filled in and flushed to disk? > > That was the first implementation, a few versions of the patch ago. An > added benefit of a separate WAL record is that you can carry additional > data for validation, such as -- as suggested by Andres -- the CRC of the > partial data contained in the message that we're skipping. I didn't > implement that, but it should be trivial to add it. I see. IMO feels a bit counterintuitive to validate a partial record that you are ignoring anyway, but I suppose it's still valuable to know when the WAL is badly broken. It's not expensive, and it doesn't add a ton of complexity, either. Nathan
В списке pgsql-hackers по дате отправления: