New features of the Odyssey connection pooler
summary
Odyssey 1.3 ships two concrete features: standby lag polling and prepared statement pooling. Standby lag polling runs a watchdog query on each replica, records last-applied WAL timestamp, and blocks or skips a replica when its lag exceeds a per-user catchup_timeout so clients with multi-host strings avoid stale reads. Prepared statement pooling hashes SQL, keeps a client-side name→sql_hash table and a server-side sql_hash→server_name table, injects PARSE on first BIND, and reuses server-side plans; defaults include a one-hour server lifetime. Release candidate runs in production with a rare slow-connection bug under investigation.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 2:31Transaction connection pooling overview
- 4:48Odyssey version details
- 8:35Standby log polling
- 14:52Prepared statement pooling
- 22:05Try Odyssey 1.3
- 22:49What would you like to see in Odyssey 1.4?
- 23:37Q&A with Andrey & Aaron
related talks
46mOdyssey — a scalable connection pooler for PostgreSQL
23mComparing Postgres connection pooler support for prepared statements
59mComparing Connection Poolers for PostgreSQL
20mElephant by the pool: PostgreSQL connection poolers overview
55mProxySQL Use Case Scenarios
48mReplication Refresh
41mProxySQL 2021 Dev Submit
30mLeverage connection pooling and multiplexing for performance and scalability
