Re: refactoring basebackup.c (zstd)

From: Justin Pryzby <pryzby(at)telsasoft(dot)com>
To: Jeevan Ladhe <jeevanladhe(dot)os(at)gmail(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, "Shinoda, Noriyoshi (PN Japan FSIP)" <noriyoshi(dot)shinoda(at)hpe(dot)com>, Dipesh Pandit <dipesh(dot)pandit(at)gmail(dot)com>, Abhijit Menon-Sen <ams(at)toroid(dot)org>, Dmitry Dolgov <9erthalion6(at)gmail(dot)com>, Jeevan Ladhe <jeevan(dot)ladhe(at)enterprisedb(dot)com>, Mark Dilger <mark(dot)dilger(at)enterprisedb(dot)com>, pgsql-hackers(at)postgresql(dot)org, tushar <tushar(dot)ahuja(at)enterprisedb(dot)com>
Subject: Re: refactoring basebackup.c (zstd)
Date: 2022-02-15 17:59:44
Message-ID: 20220215175944.GY31460@telsasoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

+++ b/configure

@@ -801,6 +805,7 @@ infodir
docdir
oldincludedir
includedir
+runstatedir

There's superfluous changes to ./configure unrelated to the changes in
configure.ac. Probably because you're using a different version of autotools,
or a vendor's patched copy. You can remove the changes with git checkout -p or
similar.

+++ b/src/backend/replication/basebackup_zstd.c
+bbsink *
+bbsink_zstd_new(bbsink *next, int compresslevel)
+{
+#ifndef HAVE_LIBZSTD
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("zstd compression is not supported by this build")));
+#else

This should have an return; like what's added by 71cbbbbe8 and 302612a6c.
Also, the parens() around errcode aren't needed since last year.

+ bbsink_zstd *sink;
+
+ Assert(next != NULL);
+ Assert(compresslevel >= 0 && compresslevel <= 22);
+
+ if (compresslevel < 0 || compresslevel > 22)
+ ereport(ERROR,

This looks like dead code in assert builds.
If it's unreachable, it can be elog().

+ * Compress the input data to the output buffer until we run out of input
+ * data. Each time the output buffer falls below the compression bound for
+ * the input buffer, invoke the archive_contents() method for then next sink.

*the next sink ?

Does anyone plan to include this for pg15 ? If so, I think at least the WAL
compression should have support added too. I'd plan to rebase Michael's patch.
https://www.postgresql.org/message-id/YNqWd2GSMrnqWIfx@paquier.xyz

--
Justin

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jeevan Ladhe 2022-02-15 18:03:50 Re: refactoring basebackup.c
Previous Message Nathan Bossart 2022-02-15 17:57:53 Re: Avoid erroring out when unable to remove or parse logical rewrite files to save checkpoint work