]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- keep trying to get PG dbs to build
authorMike Bayer <mike_mp@zzzcomputing.com>
Mon, 21 Aug 2017 23:00:25 +0000 (19:00 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 21 Aug 2017 23:00:25 +0000 (19:00 -0400)
Change-Id: Ib36949da8f079594494a482423d96e7509673481

lib/sqlalchemy/testing/provision.py

index b8ffa9687c9e4012e9cb26d0a1e8f6091c8c6228..9d41d7e5d0047c9d25a7b0406fe15d00ee7e5969 100644 (file)
@@ -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)