Re: Add Pipelining support in psql - Mailing list pgsql-hackers

From Jelte Fennema-Nio
Subject Re: Add Pipelining support in psql
Date
Msg-id CAGECzQS=nVLg0VpPrWCQT3ANFhC6iR=p8Oe6edgqGDUUCGLiwg@mail.gmail.com
Whole thread Raw
In response to Re: Add Pipelining support in psql  (Anthonin Bonnefoy <anthonin.bonnefoy@datadoghq.com>)
Responses Re: Add Pipelining support in psql
List pgsql-hackers
On Tue, 18 Mar 2025 at 09:55, Anthonin Bonnefoy
<anthonin.bonnefoy@datadoghq.com> wrote:
> I've added additional tests when piping queries with ';':
> - I've reused the same scenario with \sendpipeline: single query,
> multiple queries, flushes, syncs, using COPY...
> - Using ';' will replace the unnamed prepared statement. It's a bit
> different from expected as a simple query will delete the unnamed
> prepared statement.
> - Sending an extended query prepared with \bind using a ';' on a
> newline, though this is not specific to pipelining. The scanned
> semicolon triggers the call to SendQuery, processing the buffered
> extended query. It's a bit unusual but that's the current behaviour.

One thing that comes to mind that I think would be quite useful and
pretty easy to implement if we have this functionality within a
pipeline: An \extended command. That puts psql in "extended protocol
mode" (without enabling pipelining). In "extended protocol mode" all
queries would automatically be sent using PQsendQueryParams. That
would remove the need to use \bind anymore outside of a pipeline
either.



pgsql-hackers by date:

Previous
From: Ilia Evdokimov
Date:
Subject: Re: [PERF] Improve Cardinality Estimation for Joins with GROUP BY Having Single Clause
Next
From: Shlok Kyal
Date:
Subject: Re: Restrict copying of invalidated replication slots