From f3f6116c57c00b6e8ab6302624514b559cf2731b Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Mon, 21 Aug 2017 19:00:25 -0400 Subject: [PATCH] - keep trying to get PG dbs to build Change-Id: Ib36949da8f079594494a482423d96e7509673481 --- lib/sqlalchemy/testing/provision.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/lib/sqlalchemy/testing/provision.py b/lib/sqlalchemy/testing/provision.py index b8ffa9687c..9d41d7e5d0 100644 --- a/lib/sqlalchemy/testing/provision.py +++ b/lib/sqlalchemy/testing/provision.py @@ -169,16 +169,27 @@ def _pg_create_db(cfg, eng, ident): currentdb = conn.scalar("select current_database()") for attempt in range(10): try: + log.info( + "emitting CREATE DATABASE %s url %r" % + (ident, eng.url)) conn.execute( "CREATE DATABASE %s TEMPLATE %s" % (ident, currentdb)) except exc.OperationalError as err: + conn.connection.rollback() if attempt != 10 and "accessed by other users" in str(err): + log.info( + "got accessed by others for database %s, URI %r, " + "sleeping for .2", + ident, eng.url) time.sleep(.2) continue else: raise else: time.sleep(.5) + log.info( + "checking for database %s URI %r" % + (ident, eng.url)) result = conn.execute( "SELECT datname FROM pg_database " "where datname='%s'" % ident) -- 2.47.3