Re: psql: Add command to use extended query protocol

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Tobias Bussmann <t(dot)bussmann(at)gmx(dot)net>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Corey Huinker <corey(dot)huinker(at)gmail(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
Subject: Re: psql: Add command to use extended query protocol
Date: 2023-09-15 09:51:22
Message-ID: 202309150951.ra73w7vww3tj@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2023-Sep-14, Tobias Bussmann wrote:

> In one of my environments, this feature didn't work as expected.
> Digging into it, I found that it is incompatible with FETCH_COUNT
> being set. Sorry for not recognising this during the betas.
>
> Attached a simple patch with tests running the cursor declaration
> through PQexecParams instead of PGexec.

Hmm, strange. I had been trying to make \bind work with extended
protocol, and my findings were that there's interactions with the code
that was added for pipeline mode(*). I put research aside to work on
other things, but intended to get back to it soon ... I'm really
surprised that it works for you here.

Maybe your tests are just not extensive enough to show that it fails.

(*) This is not actually proven, but Peter had told me that his \bind
stuff had previously worked when he first implemented it before pipeline
landed. Because that's the only significant change that has happened to
the libpq code lately, it's a reasonable hypothesis.

--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
"No deja de ser humillante para una persona de ingenio saber
que no hay tonto que no le pueda enseñar algo." (Jean B. Say)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniel Gustafsson 2023-09-15 09:57:31 Re: Improve the log message output of basic_archive when basic_archive.archive_directory parameter is not set
Previous Message Nazir Bilal Yavuz 2023-09-15 09:46:56 pgBufferUsage.blk_{read|write}_time are zero although there are pgBufferUsage.local_blks_{read|written}