Search Postgresql Archives

Re: How to recover from compressed wal archieve in windows

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 21, 2020 at 01:38:11PM +0900, Kyotaro Horiguchi wrote:
> Difference from decompression by restore_command?
> 
> A WAL (segment) file is filled with multiple WAL records. The "full
> page image", which is described to be compressed by the parameter, is
> a part of WAL record. A WAL file is filled with maybe-compressed WAL
> records and has the same size in the case where wal_compression is on.

Well, to be more precise, one or more full page images may be included
in a single record, and they may, or may actually not, have up to two
level of "compression" applied to them:
- A full page image may be logged without the hole in the middle of
the page, reducing its actually size logged.
- It would be reduced in size further more if wal_compression is
enabled.

So you actually have four possible cases for a full-page image:
- Logged with its full 8kB data, with its hole included.
- Logged without its hole.
- Logged with its 8kB data and its hole, compressed with pglz.
- Logged without its hole, and compressed with pglz.

When a page is logged, we register in the record if the hole of the
logged full-page image is included or not, and if the page is
compressed with pglz or not.  Then WAL replay looks at those flags,
and determines what to do by itself when the page image is needed.
--
Michael

Attachment: signature.asc
Description: PGP signature


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux