Projet

Général

Profil

0001-tests-utilities-add-force_connections_close.patch

Christophe Siraut, 27 juin 2018 10:51

Télécharger (1,5 ko)

Voir les différences:

Subject: [PATCH 1/3] tests/utilities: add force_connections_close()

 tests/utilities.py | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)
tests/utilities.py
160 160
            cur = conn.cursor()
161 161
            cur.execute('DROP DATABASE %s' % known_elements.sql_db_name)
162 162
            cur.close()
163
        except psycopg2.Error:
164
            pass
163
        except psycopg2.Error as e:
164
            print(e)
165 165
        known_elements.sql_db_name = None
166 166

  
167

  
168
def force_connections_close():
169
    # workaround for threading issue
170
    # https://code.djangoproject.com/ticket/22420
171
    try:
172
        if known_elements.sql_db_name:
173
            conn = psycopg2.connect(user=os.environ['USER'])
174
            cur = conn.cursor()
175
            cur.execute('''SELECT pg_terminate_backend(pg_stat_activity.pid)
176
                FROM pg_stat_activity
177
                WHERE pg_stat_activity.datname = %s
178
                AND pid <> pg_backend_pid();''', (known_elements.sql_db_name,))
179
            cur.close()
180
    except psycopg2.ProgrammingError:
181
        pass
182

  
183

  
167 184
def get_app(pub, https=False):
168 185
    extra_environ = {'HTTP_HOST': 'example.net', 'REMOTE_ADDR': '127.0.0.1'}
169 186
    if https:
170
-