Add support for zstd base backup compression

Enterprise / PostgreSQL - Robert Haas [postgresql.org] - 8 March 2022 14:52 UTC

Both client-side compression and server-side compression are now supported for zstd. In addition, a backup compressed by the server using zstd can now be decompressed by the client in order to accommodate the use of -Fp.

Jeevan Ladhe, with some edits by me.

Discussion: http://postgr.es/m/CA+Tgmobyzfbz=gyze2_LL1ZumZunmaEKbHQxjrFkOR7APZGu-g@mail.gmail.com

7cf085f077 Add support for zstd base backup compression.
doc/src/sgml/protocol.sgml | 7 +-
doc/src/sgml/ref/pg_basebackup.sgml | 41 ++--
src/backend/replication/Makefile | 1 +
src/backend/replication/basebackup.c | 7 +-
src/backend/replication/basebackup_zstd.c | 299 +++++++++++++++++++++++
src/bin/pg_basebackup/Makefile | 1 +
src/bin/pg_basebackup/bbstreamer.h | 3 +
src/bin/pg_basebackup/bbstreamer_zstd.c | 338 ++++++++++++++++++++++++++
src/bin/pg_basebackup/pg_basebackup.c | 49 +++-
src/bin/pg_basebackup/pg_receivewal.c | 4 +
src/bin/pg_basebackup/walmethods.h | 1 +
src/bin/pg_verifybackup/Makefile | 1 +
src/bin/pg_verifybackup/t/008_untar.pl | 9 +
src/bin/pg_verifybackup/t/009_extract.pl | 5 +
src/bin/pg_verifybackup/t/010_client_untar.pl | 8 +
src/include/replication/basebackup_sink.h | 1 +
src/tools/msvc/Mkvcbuild.pm | 1 +
17 files changed, 750 insertions(+), 26 deletions(-)

Upstream: git.postgresql.org


  • Share