State that PgBouncer was measured, not assumed

The previous commit named PgBouncer as the pooler this client suits, from
background knowledge. It is now tested: PgBouncer 1.22 in transaction
mode (pool of 2, max_prepared_statements 0) passes every query that
hangs through pgCat 1.2.0, multiplexes 40 concurrent parameterised
queries over 2 server connections, and runs scripts/e2e-authz.sh to a
full PASS with 68 checks.
This commit is contained in:
2026-10-20 10:18:27 +00:00
parent 0e6a4aaa93
commit a9aec03d47
+4 -3
View File
@@ -19,9 +19,10 @@ import * as schema from "./schema";
// so there is no subset of this app that works there. // so there is no subset of this app that works there.
// //
// So `prepare: false` is necessary but nowhere near sufficient, and running // So `prepare: false` is necessary but nowhere near sufficient, and running
// behind pgCat is an unverified claim rather than a tested path. PgBouncer is // behind pgCat does not work. PgBouncer 1.22 in transaction mode does: the
// the pooler this configuration is actually known to suit. Migrations go // same queries pass, 40 concurrent ones multiplex over a pool of 2 server
// straight at Postgres regardless - drizzle.config.ts has no way to pass // connections, and scripts/e2e-authz.sh passes all 68 checks through it.
// Migrations go straight at Postgres regardless - drizzle.config.ts has no way to pass
// `prepare: false`, and drizzle-kit hung at commit for the same reason. // `prepare: false`, and drizzle-kit hung at commit for the same reason.
const connectionString = process.env.DATABASE_URL; const connectionString = process.env.DATABASE_URL;
if (!connectionString) { if (!connectionString) {