Re: libpq compression

From: Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andrey Borodin <x4mmm(at)yandex-team(dot)ru>, Robert Haas <robertmhaas(at)gmail(dot)com>, Daniil Zakhlystov <usernamedt(at)yandex-team(dot)ru>, Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru>, Denis Smirnov <sd(at)arenadata(dot)io>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: libpq compression
Date: 2020-12-22 19:25:58
Message-ID: 1f76b4b8-3bff-17af-ef63-872190411a60@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 12/22/20 8:03 PM, Tom Lane wrote:
> Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com> writes:
>> I don't see aby benchmark results in this thread, allowing me to make
>> that conclusion, and I find it hard to believe that 200MB/client is a
>> sensible trade-off.
>
>> It assumes you have that much memory, and it may allow easy DoS attack
>> (although maybe it's not worse than e.g. generating a lot of I/O or
>> running expensive function). Maybe allowing limiting the compression
>> level / decompression buffer size in postgresql.conf would be enough. Or
>> maybe allow disabling such compression algorithms altogether.
>
> The link Ken pointed at suggests that restricting the window size to
> 8MB is a common compromise. It's not clear to me what that does to
> the achievable compression ratio. Even 8MB could be an annoying cost
> if it's being paid per-process, on both the server and client sides.
>

Possibly, but my understanding is that's merely a recommendation for the
decoder library (e.g. libzstd), and it's not clear to me if/how that
relates to the compression level or how to influence it.

From the results shared by Daniil, the per-client overhead seems way
higher than 8MB, so either libzstd does not respect this recommendation
or maybe there's something else going on.

regards

--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2020-12-22 19:33:22 Re: libpq compression
Previous Message Tom Lane 2020-12-22 19:21:22 Re: [HACKERS] [PATCH] Generic type subscripting