userver: uPg Driver
No Matches
uPg Driver

🐙 userver provides access to PostgreSQL database servers via components::Postgres. The uPg driver is asynchronous, it suspends current coroutine for carrying out network I/O.


  • PostgreSQL cluster topology discovery;
  • Manual cluster sharding (access to shard clusters by index);
  • Connection pooling;
  • Queries are transparently converted to prepared statements to use less network on next execution, give the database more optimization freedom, avoid the need for parameters escaping as the latter are now send separately from the query;
  • Automatic PgaaS topology discovery;
  • Selecting query target (master/slave);
  • Connection failover;
  • Transaction support;
  • Variadic template query parameter passing;
  • Query result extraction to C++ types;
  • Binary protocol usage for communication;
  • Portals for effective background cache updates;
  • Queries pipelining;
  • Mapping PostgreSQL user types to C++ types;
  • Deadline propagation .

More information