From f9d6c62ec593ec743a4ec9b25d7614606d27d4fa Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Sat, 19 Mar 2016 15:10:50 +0300 Subject: Use connection_pool_factory in brep module --- brep/database.cxx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'brep/database.cxx') diff --git a/brep/database.cxx b/brep/database.cxx index 1f70881..4b56c37 100644 --- a/brep/database.cxx +++ b/brep/database.cxx @@ -7,6 +7,7 @@ #include #include +#include namespace brep { @@ -26,11 +27,11 @@ namespace brep } } - shared_ptr + using namespace odb; + + shared_ptr shared_database (const options::db& o) { - using odb::pgsql::database; - static std::map> databases; auto i (databases.find (o)); @@ -40,14 +41,18 @@ namespace brep return d; } + unique_ptr + f (new pgsql::connection_pool_factory (o.db_max_connections ())); + shared_ptr d ( - make_shared ( + make_shared ( o.db_user (), o.db_password (), o.db_name (), o.db_host (), o.db_port (), - "options='-c default_transaction_isolation=serializable'")); + "options='-c default_transaction_isolation=serializable'", + move (f))); databases[o] = d; return d; -- cgit v1.1