def _makeBlockingPostgres(parsed, connections=1): import psycopg2 from psycopg2.extras import DictCursor connstr = mkConnStr(parsed) pool = ConnectionPool() pool.db_scheme = 'postgres' for i in xrange(connections): db = psycopg2.connect(connstr, cursor_factory=DictCursor) runner = PostgresRunner(db) pool.add(runner) return defer.succeed(pool)
def _makeTxPostgres(parsed, connections=1): from norm.tx_postgres import DictConnection pool = ConnectionPool() pool.db_scheme = 'postgres' connstr = mkConnStr(parsed) dlist = [] for i in xrange(connections): conn = DictConnection() d = conn.connect(connstr) d.addCallback(lambda _: pool.add(conn)) dlist.append(d) ret = defer.gatherResults(dlist) return ret.addCallback(lambda _: pool)