Hi,

It looks like you have the issue of a query that is referencing the prepared 
statements of another session. This is expected in transaction pooling mode. 
Since you are using this version of pgbouncer
try to look into the  max_prepared_statements parameter, I am not quite sure 
with the unnamed aspect though, this would need testing on your config.




Cordialement,  Kind Regards,

Adrien OBERNESSER

________________________________
From: Durgamahesh Manne <[email protected]>
Sent: Monday, February 16, 2026 2:24 PM
To: pgsql-general <[email protected]>
Subject: pgbouncer transaction pool mode issue for prepared statements

Hi PGDG Team



We’re currently facing an issue with PgBouncer transaction pooling mode, where 
prepared statements are failing, and we are unable to modify the application 
code to disable or change how prepared statements are used.

Switching to session pooling mode is not feasible for us because we have a very 
high number of connections that we cannot fully control. Environment details: 
PgBouncer version: 1.25.1 PostgreSQL version: 16.11

 The specific error we’re seeing is:

bind message has 43 result formats but query has 47 columns

ERROR: unnamed prepared statement does not exist Repeatedly logs

 Has anyone encountered this issue with transaction pooling and prepared 
statements? Are there any PgBouncer parameters or settings we can use to 
mitigate this problem without requiring application‑level changes? Any guidance 
or solutions would be greatly appreciated.

Regards
Durga Mahesh

Reply via email to