Re: libpq: Process buffered SSL read bytes to support records >8kB on async API
Jacob Champion <jacob.champion@enterprisedb.com>
From: Jacob Champion <jacob.champion@enterprisedb.com>
To: Lars Kanis <lars@greiz-reinsdorf.de>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2025-07-02T23:12:40Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Remove incorrect Assert.
- 77761ee5dddc 18.0 cited
On Tue, Jul 1, 2025 at 1:42 PM Jacob Champion <jacob.champion@enterprisedb.com> wrote: > I do > not yet understand why this protection is not extended to > GSS-encrypted connections. After repurposing some of my test code for d98cefe11, I'm able to reproduce the hang with gssencmode when the server uses a smaller-than-standard (12k) send buffer. Same reproduction case as the original (32006-byte DataRow, 806-byte DataRow, CommandComplete, ReadyForQuery). So a complete patch for this has to consider GSS as well. > So, to fix this once and for all, do we have to make sure that > pqReadData() always fully drains the SSL/GSS transport buffer instead > of eagerly returning? I'll work on proving that code paths other than PQconsumeInput() are affected. If they are, I'll start a patch for pqReadData(). --Jacob