I’m currently using SQLX in my Rust application, which utilizes prepared statements by default. This application is deployed on AWS Lambda. However, I’ve encountered an issue with non-pooling connections, as PostgreSQL (PG) rapidly reaches its connection limit. Each Lambda instance creates a new connection, and there’s a restriction of around 97 connections per 1GB of RAM.
I highly appreciate the advantages of connection pooling, but unfortunately, it’s not functioning properly at the moment. This is because Neon is using an outdated version of PgBouncer. I’ve learned that a new version has been released, which supports the use of prepared statements.
I’m wondering when we can expect this upgrade to be implemented, Is there anything we need to do our end?
The prepared statement support PR for pgbouncer was finally merged 2 weeks ago:
We have a PR request in place waiting to be merged, so keep an eye on the release notes: Release notes - Neon Docs
The endpoints are, for the most part, immutable; but they are also ephemeral.
So when the updated pgbouncer is released, the next time your endpoint updates, the new version should be in place.