Hi,
PFA patch for database node.
Enhancement: We don't need to disconnect and connect to databse for each
single offline query. We can disconnect once then apply queries and then
connect again.
And minor code refactoring (more pythonic way)
--
*Harshal Dhumal*
*Software Engineer *
EenterpriseDB <http://www.enterprisedb.com>
diff --git a/web/pgadmin/browser/server_groups/servers/databases/__init__.py b/web/pgadmin/browser/server_groups/servers/databases/__init__.py
index 5d1d7a5..a015797 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/__init__.py
+++ b/web/pgadmin/browser/server_groups/servers/databases/__init__.py
@@ -290,10 +290,7 @@ class DatabaseView(NodeView):
def formatdbacl(res, dbacl):
for row in dbacl:
priv = parse_priv_from_db(row)
- if row['deftype'] in res['rows'][0]:
- res['rows'][0][row['deftype']].append(priv)
- else:
- res['rows'][0][row['deftype']] = [priv]
+ res['rows'][0].setdefault(row['deftype'], []).append(priv)
return res
def module_js(self):
@@ -500,22 +497,21 @@ class DatabaseView(NodeView):
data['name'] = name
try:
+ status = self.manager.release(did=did)
+ conn = self.manager.connection()
for action in ["rename_database", "tablespace"]:
SQL = self.getOfflineSQL(gid, sid, data, did, action)
SQL = SQL.strip('\n').strip(' ')
if SQL and SQL != "":
- status = self.manager.release(did=did)
-
- conn = self.manager.connection()
status, msg = conn.execute_scalar(SQL)
-
if not status:
return internal_server_error(errormsg=msg)
- self.conn = self.manager.connection(database=data['name'], auto_reconnect=True)
- status, errmsg = self.conn.connect()
info = "Database updated."
+ self.conn = self.manager.connection(database=data['name'], auto_reconnect=True)
+ status, errmsg = self.conn.connect()
+
SQL = self.getOnlineSQL(gid, sid, data, did)
SQL = SQL.strip('\n').strip(' ')
if SQL and SQL != "":
--
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers