Thread

  1. PgBouncer Prepared Statement ERROR

    KK CHN <kkchn.in@gmail.com> — 2025-07-18T12:52:55Z

    Hi ,
    
    I am getting error when using  PgBouncer(1.23.1 ) with  Postgres 16
    (RedHAT 9.4)
    
    2025-07-18 00:00:00 IST ERROR:  prepared statement "S_243" does not exist
    2025-07-18 00:00:03 IST ERROR:  prepared statement "S_205" does not exist
    2025-07-18 00:00:03 IST ERROR:  prepared statement "S_206" does not exist
    2025-07-18 00:00:03 IST ERROR:  prepared statement "S_207" does not exist
    
    
    How to avoid these prepared statement Errors ?
    
    
    Any hints most welcome,
    Krishane
    
    
    
    config as follows
    [root@pgbouncer ~]# grep ^[^';;;']  /usr/local/etc/pgbouncer.ini
    [databases]
    transaction_db = host=dbmain.erss.in port=5444 dbname= transaction_db
    mgt_db = host=dbmain.erss.in port=5444 dbname=mgt_db
    ....................................
    tsp_db = host=dbmain.erss.in port=5444 dbname=tsp_db
    [users]
    [pgbouncer]
    logfile = /var/log/pgbouncer/pgbouncer.log
    pidfile = /var/run/pgbouncer/pgbouncer.pid
    listen_addr = *
    listen_port = 5444
    auth_type = md5
    auth_file = /usr/local/etc/pgbouncer.users
    admin_users = myuser
    stats_users =  status_user,
    pool_mode = transaction
    server_reset_query = DISCARD ALL
    server_reset_query_always = 1
    ignore_startup_parameters = extra_float_digits, options, statement_timeout,
    idle_in_transaction_session_timeout
    max_client_conn = 5000
    default_pool_size = 20
    min_pool_size = 10
    reserve_pool_size = 10
    reserve_pool_timeout = 5
    max_db_connections = 900
    max_user_connections = 800
    server_lifetime = 3600
    server_idle_timeout = 60000
    [root@pgbouncer ~]#
    
  2. Re: PgBouncer Prepared Statement ERROR

    Greg Sabino Mullane <htamfids@gmail.com> — 2025-07-18T13:32:29Z

    Make sure  max_prepared_statements is set to nonzero in your config. See:
    
    https://www.crunchydata.com/blog/prepared-statements-in-transaction-mode-for-pgbouncer
    
    Cheers,
    Greg
    
    --
    Crunchy Data - https://www.crunchydata.com
    Enterprise Postgres Software Products & Tech Support
    
  3. Re: PgBouncer Prepared Statement ERROR

    Laurenz Albe <laurenz.albe@cybertec.at> — 2025-07-18T13:34:28Z

    On Fri, 2025-07-18 at 18:22 +0530, KK CHN wrote:
    > I am getting error when using  PgBouncer(1.23.1 ) with  Postgres 16  (RedHAT 9.4)
    > 
    > 2025-07-18 00:00:00 IST ERROR:  prepared statement "S_243" does not exist
    > 2025-07-18 00:00:03 IST ERROR:  prepared statement "S_205" does not exist
    > 2025-07-18 00:00:03 IST ERROR:  prepared statement "S_206" does not exist
    > 2025-07-18 00:00:03 IST ERROR:  prepared statement "S_207" does not exist
    > 
    > How to avoid these prepared statement Errors ? 
    
    Use a recent version of pgBouncer and set "max_prepared_statements"
    high enough.
    
    Yours,
    Laurenz Albe
    
    
    
    
  4. Re: PgBouncer Prepared Statement ERROR

    Achilleas Mantzios <a.mantzios@cloud.gatewaynet.com> — 2025-07-23T08:06:24Z

    On 7/18/25 13:52, KK CHN wrote:
    
    > Hi ,
    >
    > I am getting error when using  PgBouncer(1.23.1 ) with Postgres 16  
    > (RedHAT 9.4)
    >
    > 2025-07-18 00:00:00 IST ERROR:  prepared statement "S_243" does not exist
    > 2025-07-18 00:00:03 IST ERROR:  prepared statement "S_205" does not exist
    > 2025-07-18 00:00:03 IST ERROR:  prepared statement "S_206" does not exist
    > 2025-07-18 00:00:03 IST ERROR:  prepared statement "S_207" does not exist
    >
    >
    > How to avoid these prepared statement Errors ?
    >
    >
    
    Before you start considering prepared statements, via pgbouncer, and 
    testing them to see if you benefit from them, you may at first disable 
    them all together.
    
    Just set prepareThreshold=0 in the connection url, or params.
    
    
    > Any hints most welcome,
    > Krishane
    >
    >
    > config as follows
    > [root@pgbouncer ~]# grep ^[^';;;']  /usr/local/etc/pgbouncer.ini
    > [databases]
    > transaction_db = host=dbmain.erss.in <http://dbmain.erss.in> port=5444 
    > dbname= transaction_db
    > mgt_db = host=dbmain.erss.in <http://dbmain.erss.in> port=5444 
    > dbname=mgt_db
    > ....................................
    > tsp_db = host=dbmain.erss.in <http://dbmain.erss.in> port=5444 
    > dbname=tsp_db
    > [users]
    > [pgbouncer]
    > logfile = /var/log/pgbouncer/pgbouncer.log
    > pidfile = /var/run/pgbouncer/pgbouncer.pid
    > listen_addr = *
    > listen_port = 5444
    > auth_type = md5
    > auth_file = /usr/local/etc/pgbouncer.users
    > admin_users = myuser
    > stats_users =  status_user,
    > pool_mode = transaction
    > server_reset_query = DISCARD ALL
    > server_reset_query_always = 1
    > ignore_startup_parameters = extra_float_digits, options, 
    > statement_timeout, idle_in_transaction_session_timeout
    > max_client_conn = 5000
    > default_pool_size = 20
    > min_pool_size = 10
    > reserve_pool_size = 10
    > reserve_pool_timeout = 5
    > max_db_connections = 900
    > max_user_connections = 800
    > server_lifetime = 3600
    > server_idle_timeout = 60000
    > [root@pgbouncer ~]#
    >