Re: Different compression methods for FPI

x4mmm@yandex-team.ru

From: Andrey Borodin <x4mmm@yandex-team.ru>
To: Justin Pryzby <pryzby@telsasoft.com>
Cc: Michael Paquier <michael@paquier.xyz>, pgsql-hackers@postgresql.org
Date: 2021-03-13T15:48:33Z
Lists: pgsql-hackers

> 13 марта 2021 г., в 06:28, Justin Pryzby <pryzby@telsasoft.com> написал(а):
>> 
> Updated patch with a minor fix to configure.ac to avoid warnings on OSX.
> And 2ndary patches from another thread to allow passing recovery tests.
> Renamed to WAL_COMPRESSION_*
> Split LZ4 support to a separate patch and support zstd.  These show that
> changes needed for a new compression method have been minimized, although not
> yet moved to a separate, abstracted compression/decompression function.

Thanks! Awesome work!

> These two patches are a prerequisite for this patch to progress:
> * Run 011_crash_recovery.pl with wal_level=minimal
> * Make sure published XIDs are persistent
> 
> I don't know if anyone will consider this patch for v14 - if not, it should be
> set to v15 and revisit in a month.  

I want to note, that fixes for 011_crash_recovery.pl are not strictly necessary for this patch set.
The problem in tests arises if we turn on wal_compression, absolutely independently from wal compression method.
We turn on wal_compression in this test only for CI purposes.

Thanks!

Best regards, Andrey Borodin.


Commits

  1. Add more error context to RestoreBlockImage() and consume it

  2. Add support for LZ4 with compression of full-page writes in WAL

  3. Extended statistics on expressions

  4. Be clear about whether a recovery pause has taken effect.

  5. Add GUC to enable compression of full page images stored in WAL.