postgres logs indicate errors with prepared statements, since pgbouncer was installed.

Started by Chris Barnesover 16 years ago2 messagesgeneral
Jump to latest
#1Chris Barnes
compuguruchrisbarnes@hotmail.com

We are using pgbouncer and seeing these errors in the postgresql logs.

I don't believe pgbouncer allows for server prepared statements, so why would I see anything in the logs at all?

2009-11-03 12:00:37 EST:user@10.0.0.1(56270):822ERROR: prepared statement "dbdpg_p1573_3968" does not exist
2009-11-03 12:00:37 EST:user@10.0.0.1(56270):822STATEMENT: DEALLOCATE dbdpg_p1573_3968
2009-11-03 12:00:37 EST:user@10.0.0.1(56126):28526ERROR: prepared statement "dbdpg_p1573_3969" does not exist
2009-11-03 12:00:37 EST:user@10.0.0.1(56125):28525ERROR: prepared statement "dbdpg_p1573_3969" does not exist
2009-11-03 12:00:37 EST:user@10.0.0.1(56125):28525STATEMENT: DEALLOCATE dbdpg_p1573_3969
2009-11-03 12:00:37 EST:user@10.0.0.1(56270):822ERROR: prepared statement "dbdpg_p1573_3970" does not exist
2009-11-03 12:00:37 EST:user@10.0.0.1(56270):822ERROR: prepared statement "dbdpg_p1573_3970" does not exist
2009-11-03 12:00:37 EST:user@10.0.0.1(56270):822STATEMENT: DEALLOCATE dbdpg_p1573_3970

Any help would be appreciated.

_________________________________________________________________
Windows Live: Friends get your Flickr, Yelp, and Digg updates when they e-mail you.
http://go.microsoft.com/?linkid=9691817

#2Greg Sabino Mullane
greg@turnstep.com
In reply to: Chris Barnes (#1)
Re: postgres logs indicate errors with prepared statements, since pgbouncer was installed.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160

We are using pgbouncer and seeing these errors in the postgresql logs.
...ERROR: prepared statement "dbdpg_p1573_3968" does not exist

I don't believe pgbouncer allows for server prepared statements,
so why would I see anything in the logs at all?

Because you are using prepared statements. :) You are probably running pgbouncer
at the "transaction" level, in which case you need to do this inside DBD::Pg
right after the initial connection:

$dbh->{pg_server_prepare} = 0;

This will prevent DBD::Pg from using server-side prepares. There's a small cost
to this, but it's usually overshadowed by the efficiency savings of using
pgbouncer.

- --
Greg Sabino Mullane greg@turnstep.com
End Point Corporation
PGP Key: 0x14964AC8 200911051621
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8

-----BEGIN PGP SIGNATURE-----

iEYEAREDAAYFAkrzQh4ACgkQvJuQZxSWSsg3rACfVejcM3ZJg4yF1ehLB9YbDoMZ
6uUAn0MDvjHqH5ackLznQxTjVBMJUZHm
=Odco
-----END PGP SIGNATURE-----