Always create databases from template0 when running regression tests, to ensure consistency and avoid concurrency issues.

This commit is contained in:
Dave Page 2016-10-18 11:57:31 +01:00
parent df09f02e80
commit 8d2dff1482
3 changed files with 3 additions and 2 deletions

View File

@ -34,6 +34,7 @@ class DatabaseAddTestCase(BaseTestGenerator):
if server_response["info"] == "Server connected.": if server_response["info"] == "Server connected.":
db_owner = server_response['data']['user']['name'] db_owner = server_response['data']['user']['name']
self.data = database_utils.get_db_data(db_owner) self.data = database_utils.get_db_data(db_owner)
self.data['template'] = 'template0'
self.db_name = self.data['name'] self.db_name = self.data['name']
response = self.tester.post(self.url + str(utils.SERVER_GROUP) + response = self.tester.post(self.url + str(utils.SERVER_GROUP) +
"/" + str(self.server_id) + "/", "/" + str(self.server_id) + "/",

View File

@ -104,7 +104,7 @@ def create_database(connection, db_name):
old_isolation_level = connection.isolation_level old_isolation_level = connection.isolation_level
connection.set_isolation_level(0) connection.set_isolation_level(0)
pg_cursor = connection.cursor() pg_cursor = connection.cursor()
pg_cursor.execute('''CREATE DATABASE "%s"''' % db_name) pg_cursor.execute('''CREATE DATABASE "%s" TEMPLATE template0''' % db_name)
connection.set_isolation_level(old_isolation_level) connection.set_isolation_level(old_isolation_level)
connection.commit() connection.commit()
return pg_cursor return pg_cursor

View File

@ -117,7 +117,7 @@ def create_database(server, db_name):
old_isolation_level = connection.isolation_level old_isolation_level = connection.isolation_level
connection.set_isolation_level(0) connection.set_isolation_level(0)
pg_cursor = connection.cursor() pg_cursor = connection.cursor()
pg_cursor.execute('''CREATE DATABASE "%s"''' % db_name) pg_cursor.execute('''CREATE DATABASE "%s" TEMPLATE template0''' % db_name)
connection.set_isolation_level(old_isolation_level) connection.set_isolation_level(old_isolation_level)
connection.commit() connection.commit()