Hi Hackers,


I was hoping to get some clarification regarding a behaviour I observed while 
connecting to the special 'pgbouncer' database used for administering or 
monitoring Pgbouncer.



After the commit cf0cab868a, introduced in PG15, I noticed that when connecting 
to the 'pgbouncer' database via Pgbouncer, the following warning is shown:

psql (17.2, server 1.20.1/bouncer)

WARNING: psql major version 17, server major version 1.20.

         Some psql features might not work.








>From what I understand, this seems to be due to the lower version check in the 
>connection_warnings() function, where we check if pset.sversion < 90200.

if (pset.sversion / 100 > client_ver / 100 ||

pset.sversion < 90200)

printf(_("WARNING: %s major version %s, server major version %s.\n"

"         Some psql features might not work.\n"),

   pset.progname,

   formatPGVersionNumber(client_ver, false,

cverbuf, sizeof(cverbuf)),

   formatPGVersionNumber(pset.sversion, false,

sverbuf, sizeof(sverbuf)));







In my case, pset.sversion ends up being 12001 (due to PgBouncer v1.20.1), and 
since that’s less than 90200, the warning gets triggered, which feels 
misleading. But I was wondering - does it really make sense to compare 
PgBouncer’s version in this context using the same logic as PostgreSQL server 
versions?



Is this an expected behaviour, or would it make sense to handle Pgbouncer 
differently in this check?



Appreciate any insights!



Thanks & Regards,
Shaik Mohammad Mujeeb
Member Technical Staff
Zoho Corp

Reply via email to