Re: libpq: Process buffered SSL read bytes to support records >8kB on async API

From: Merlin Moncure <mmoncure(at)gmail(dot)com>
To: Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>
Cc: Lars Kanis <lars(at)greiz-reinsdorf(dot)de>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: libpq: Process buffered SSL read bytes to support records >8kB on async API
Date: 2025-07-16 14:36:34
Message-ID: CAHyXU0yB7w_ZffGAmN2eCRWGS=jzfqBWP2eYukf0MnUO113kzg@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jul 15, 2025 at 4:31 PM Jacob Champion <
jacob(dot)champion(at)enterprisedb(dot)com> wrote

> Otherwise I think we'll continue to chase weird corner cases.
>

Agreed. Here's a little more detail on the case I noticed:

* postgres backend thread managing several libpq connections, with polling
is_busy loop
* when client pushed a lot of log messages (say, with 'RAISE NOTICE'), the
server would stall for significant periods of time, sometimes minutes --
during that time, there would be no activity in the log (the server doesn't
do anything interesting outside of of the polling loop)
* checking backend server log, which relogs the client raised logs via
dblink, each pause happened after roughly 16k bytes
* reducing the log verbosity made the problem go away.

merlin

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tomas Vondra 2025-07-16 14:37:42 Re: index prefetching
Previous Message Peter Geoghegan 2025-07-16 14:29:36 Re: index prefetching