Re: libpq compression (part 2) - Mailing list pgsql-hackers

From Justin Pryzby
Subject Re: libpq compression (part 2)
Date
Msg-id 20221116031728.GI26337@telsasoft.com
Whole thread Raw
In response to Re: libpq compression (part 2)  (Andrey Borodin <amborodin86@gmail.com>)
Responses Re: libpq compression (part 2)
List pgsql-hackers
On Mon, Nov 14, 2022 at 07:44:24PM -0800, Andrey Borodin wrote:
> patchset needs a heavy rebase. If no one shows up to fix it I'll do

Despite what its git timestamp says, this is based on the most recent
patch from January, which I've had floating around since then.  It
needed to be rebased over at least:

  - guc_tables patch;
  - build and test with meson;
  - doc/

Some of my changes are separate so you can see what I've done.
check_libpq_compression() is in the wrong place, but I couldn't
immediately see where else to put it, since src/common can't include the
backend's guc headers.

Some of the makefile changes seem unnecessary (now?), and my meson
changes don't seem quite right, either.

There's no reason for Zstd to be a separate patch anymore.

It should be updated to parse compression level and options using the
infrastructure introduced for basebackup.

And address the architectural issue from 2 years ago:
https://www.postgresql.org/message-id/20220118043919.GA23027%40telsasoft.com

The global variable PqStream should be moved into some libpq structure
(Port?) and handled within secure_read().  And pqsecure_read shouldn't
be passed as a function pointer/callback.  And verify it passes tests
with all supported compression algorithms and connects to old servers.

-- 
Justin

Attachment

pgsql-hackers by date:

Previous
From: Ted Yu
Date:
Subject: Re: closing file in adjust_data_dir
Next
From: Japin Li
Date:
Subject: Re: closing file in adjust_data_dir