Hi, Please find attached updated patch for RM1720.
Also test this patch with updated test suite patch which Navnath would be sending. -- *Harshal Dhumal* *Software Engineer* EnterpriseDB India: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Wed, Sep 21, 2016 at 8:39 PM, Dave Page <dp...@pgadmin.org> wrote: > On Wed, Sep 21, 2016 at 4:02 PM, Navnath Gadakh > <navnath.gad...@enterprisedb.com> wrote: > > Hi Dave, > > Can you please run testsuite for server or database node only, as > > there are some code modifications are remaining on the rest of the nodes. > > Currently i don't have a machine to look into issue, will check it > tomorrow. > > OK, here's the result: > > (pgadmin4)piranha:web dpage$ python regression/runtests.py --pkg > browser.server_groups.servers.databases > pgAdmin 4 - Application Initialisation > ====================================== > > > The configuration database - '/Users/dpage/.pgadmin/test_pgadmin4.db' > does not exist. > Entering initial setup mode... > NOTE: Configuring authentication for SERVER mode. > > > The configuration database has been created at > /Users/dpage/.pgadmin/test_pgadmin4.db > > =============Running the test cases for 'Regression - PG 9.4'============= > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_add.DatabaseAddTestCase) > This function will add database under 1st server of tree node. (Check > Databases Node URL) ... ok > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_delete.DatabaseDeleteTestCase) > This function will delete the database. (Check Databases Node URL) ... ok > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_get.DatabasesGetTestCase) > This function will fetch added database. (Check Databases Node URL) ... ok > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_put.DatabasesUpdateTestCase) > This function will update the comments field of database. (Check > Databases Node) ... ok > > ---------------------------------------------------------------------- > Ran 4 tests in 1.310s > > OK > > =============Running the test cases for 'Regression - PG 9.5'============= > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_add.DatabaseAddTestCase) > This function will add database under 1st server of tree node. (Check > Databases Node URL) ... ok > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_delete.DatabaseDeleteTestCase) > This function will delete the database. (Check Databases Node URL) ... FAIL > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_get.DatabasesGetTestCase) > This function will fetch added database. (Check Databases Node URL) ... > ERROR > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_put.DatabasesUpdateTestCase) > This function will update the comments field of database. (Check > Databases Node) ... ERROR > > ====================================================================== > ERROR: runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_get.DatabasesGetTestCase) > This function will fetch added database. (Check Databases Node URL) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/test_db_get.py", > line 33, in runTest > self.db_id) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/utils.py", > line 142, in verify_database > follow_redirects=True) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 788, in post > return self.open(*args, **kw) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/testing.py", > line 113, in open > follow_redirects=follow_redirects) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 751, in open > response = self.run_wsgi_app(environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 668, in run_wsgi_app > rv = run_wsgi_app(self.application, environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 871, in run_wsgi_app > app_rv = app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 2000, in __call__ > return self.wsgi_app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1991, in wsgi_app > response = self.make_response(self.handle_exception(e)) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1567, in handle_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1988, in wsgi_app > response = self.full_dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1641, in full_dispatch_request > rv = self.handle_user_exception(e) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1544, in handle_user_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1639, in full_dispatch_request > rv = self.dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1625, in dispatch_request > return self.view_functions[rule.endpoint](**req.view_args) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/views.py", > line 84, in view > return self.dispatch_request(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line > 235, in dispatch_request > return method(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/__init__.py", > line 364, in connect > conn = manager.connection(did=did, auto_reconnect=True) > File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/ > psycopg2/__init__.py", > line 1448, in connection > "Couldn't find the specified database." > Exception: Couldn't find the specified database. > > ====================================================================== > ERROR: runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_put.DatabasesUpdateTestCase) > This function will update the comments field of database. (Check Databases > Node) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/test_db_put.py", > line 37, in runTest > db_id) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/utils.py", > line 142, in verify_database > follow_redirects=True) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 788, in post > return self.open(*args, **kw) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/testing.py", > line 113, in open > follow_redirects=follow_redirects) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 751, in open > response = self.run_wsgi_app(environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 668, in run_wsgi_app > rv = run_wsgi_app(self.application, environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 871, in run_wsgi_app > app_rv = app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 2000, in __call__ > return self.wsgi_app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1991, in wsgi_app > response = self.make_response(self.handle_exception(e)) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1567, in handle_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1988, in wsgi_app > response = self.full_dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1641, in full_dispatch_request > rv = self.handle_user_exception(e) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1544, in handle_user_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1639, in full_dispatch_request > rv = self.dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1625, in dispatch_request > return self.view_functions[rule.endpoint](**req.view_args) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/views.py", > line 84, in view > return self.dispatch_request(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line > 235, in dispatch_request > return method(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/__init__.py", > line 364, in connect > conn = manager.connection(did=did, auto_reconnect=True) > File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/ > psycopg2/__init__.py", > line 1448, in connection > "Couldn't find the specified database." > Exception: Couldn't find the specified database. > > ====================================================================== > FAIL: runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_delete.DatabaseDeleteTestCase) > This function will delete the database. (Check Databases Node URL) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/test_db_delete.py", > line 38, in runTest > self.assertEquals(response.status_code, 200) > AssertionError: 410 != 200 > > ---------------------------------------------------------------------- > Ran 4 tests in 1.019s > > FAILED (failures=1, errors=2) > > =============Running the test cases for 'Regression - EPAS > 9.5'============= > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_add.DatabaseAddTestCase) > This function will add database under 1st server of tree node. (Check > Databases Node URL) ... ok > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_delete.DatabaseDeleteTestCase) > This function will delete the database. (Check Databases Node URL) ... FAIL > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_get.DatabasesGetTestCase) > This function will fetch added database. (Check Databases Node URL) ... > ERROR > runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_put.DatabasesUpdateTestCase) > This function will update the comments field of database. (Check > Databases Node) ... ERROR > > ====================================================================== > ERROR: runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_get.DatabasesGetTestCase) > This function will fetch added database. (Check Databases Node URL) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/test_db_get.py", > line 33, in runTest > self.db_id) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/utils.py", > line 142, in verify_database > follow_redirects=True) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 788, in post > return self.open(*args, **kw) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/testing.py", > line 113, in open > follow_redirects=follow_redirects) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 751, in open > response = self.run_wsgi_app(environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 668, in run_wsgi_app > rv = run_wsgi_app(self.application, environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 871, in run_wsgi_app > app_rv = app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 2000, in __call__ > return self.wsgi_app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1991, in wsgi_app > response = self.make_response(self.handle_exception(e)) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1567, in handle_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1988, in wsgi_app > response = self.full_dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1641, in full_dispatch_request > rv = self.handle_user_exception(e) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1544, in handle_user_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1639, in full_dispatch_request > rv = self.dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1625, in dispatch_request > return self.view_functions[rule.endpoint](**req.view_args) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/views.py", > line 84, in view > return self.dispatch_request(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line > 235, in dispatch_request > return method(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/__init__.py", > line 364, in connect > conn = manager.connection(did=did, auto_reconnect=True) > File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/ > psycopg2/__init__.py", > line 1448, in connection > "Couldn't find the specified database." > Exception: Couldn't find the specified database. > > ====================================================================== > ERROR: runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_put.DatabasesUpdateTestCase) > This function will update the comments field of database. (Check Databases > Node) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/test_db_put.py", > line 37, in runTest > db_id) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/utils.py", > line 142, in verify_database > follow_redirects=True) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 788, in post > return self.open(*args, **kw) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/testing.py", > line 113, in open > follow_redirects=follow_redirects) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 751, in open > response = self.run_wsgi_app(environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 668, in run_wsgi_app > rv = run_wsgi_app(self.application, environ, buffered=buffered) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/werkzeug/test.py", > line 871, in run_wsgi_app > app_rv = app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 2000, in __call__ > return self.wsgi_app(environ, start_response) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1991, in wsgi_app > response = self.make_response(self.handle_exception(e)) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1567, in handle_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1988, in wsgi_app > response = self.full_dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1641, in full_dispatch_request > rv = self.handle_user_exception(e) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1544, in handle_user_exception > reraise(exc_type, exc_value, tb) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1639, in full_dispatch_request > rv = self.dispatch_request() > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/app.py", > line 1625, in dispatch_request > return self.view_functions[rule.endpoint](**req.view_args) > File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site- > packages/flask/views.py", > line 84, in view > return self.dispatch_request(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line > 235, in dispatch_request > return method(*args, **kwargs) > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/__init__.py", > line 364, in connect > conn = manager.connection(did=did, auto_reconnect=True) > File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/ > psycopg2/__init__.py", > line 1448, in connection > "Couldn't find the specified database." > Exception: Couldn't find the specified database. > > ====================================================================== > FAIL: runTest (pgadmin.browser.server_groups.servers.databases. > tests.test_db_delete.DatabaseDeleteTestCase) > This function will delete the database. (Check Databases Node URL) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_ > groups/servers/databases/tests/test_db_delete.py", > line 38, in runTest > self.assertEquals(response.status_code, 200) > AssertionError: 410 != 200 > > ---------------------------------------------------------------------- > Ran 4 tests in 1.807s > > FAILED (failures=1, errors=2) > > Test Result Summary > ============================ > Regression - EPAS 9.5: 1 test passed, 3 tests failed : > DatabaseDeleteTestCase > DatabasesGetTestCase > DatabasesUpdateTestCase > Regression - PG 9.5: 1 test passed, 3 tests failed : > DatabaseDeleteTestCase > DatabasesGetTestCase > DatabasesUpdateTestCase > Regression - PG 9.4: 4 tests passed, 0 tests failed > ============================ > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company >
diff --git a/web/pgadmin/browser/server_groups/servers/__init__.py b/web/pgadmin/browser/server_groups/servers/__init__.py index 0b6c6ca..611d701 100644 --- a/web/pgadmin/browser/server_groups/servers/__init__.py +++ b/web/pgadmin/browser/server_groups/servers/__init__.py @@ -24,6 +24,7 @@ from pgadmin.utils.menu import MenuItem import config from config import PG_DEFAULT_DRIVER from pgadmin.model import db, Server, ServerGroup, User +from pgadmin.utils.driver import get_driver def has_any(data, keys): @@ -64,7 +65,6 @@ class ServerModule(sg.ServerGroupPluginModule): servers = Server.query.filter_by(user_id=current_user.id, servergroup_id=gid) - from pgadmin.utils.driver import get_driver driver = get_driver(PG_DEFAULT_DRIVER) for server in servers: @@ -156,7 +156,6 @@ class ServerModule(sg.ServerGroupPluginModule): sub-modules at once. """ if first_registration: - from pgadmin.utils.driver import get_driver driver = get_driver(PG_DEFAULT_DRIVER, app) app.jinja_env.filters['qtLiteral'] = driver.qtLiteral app.jinja_env.filters['qtIdent'] = driver.qtIdent @@ -224,7 +223,6 @@ class ServerNode(PGChildNodeView): servers = Server.query.filter_by(user_id=current_user.id, servergroup_id=gid) - from pgadmin.utils.driver import get_driver driver = get_driver(PG_DEFAULT_DRIVER) for server in servers: @@ -293,7 +291,6 @@ class ServerNode(PGChildNodeView): ) ) - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(server.id) conn = manager.connection() connected = conn.connected() @@ -353,6 +350,7 @@ class ServerNode(PGChildNodeView): else: try: for s in servers: + get_driver(PG_DEFAULT_DRIVER).delete_manager(s.id) db.session.delete(s) db.session.commit() except Exception as e: @@ -405,7 +403,6 @@ class ServerNode(PGChildNodeView): request.data, encoding='utf-8' ) - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() connected = conn.connected() @@ -473,7 +470,6 @@ class ServerNode(PGChildNodeView): ).first() res = [] - from pgadmin.utils.driver import get_driver driver = get_driver(PG_DEFAULT_DRIVER) for server in servers: @@ -519,7 +515,6 @@ class ServerNode(PGChildNodeView): id=server.servergroup_id ).first() - from pgadmin.utils.driver import get_driver driver = get_driver(PG_DEFAULT_DRIVER) manager = driver.connection_manager(sid) @@ -594,7 +589,6 @@ class ServerNode(PGChildNodeView): user = None if 'connect_now' in data and data['connect_now']: - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(server.id) manager.update(server) conn = manager.connection() @@ -663,7 +657,6 @@ class ServerNode(PGChildNodeView): return make_json_response(data='') def statistics(self, gid, sid): - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() @@ -717,7 +710,6 @@ class ServerNode(PGChildNodeView): def connect_status(self, gid, sid): """Check and return the connection status.""" - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() res = conn.connected() @@ -769,7 +761,6 @@ class ServerNode(PGChildNodeView): save_password = False # Connect the Server - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() @@ -902,7 +893,6 @@ class ServerNode(PGChildNodeView): return bad_request(gettext("Server not found.")) # Release Connection - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) status = manager.release() @@ -923,7 +913,6 @@ class ServerNode(PGChildNodeView): """Reload the server configuration""" # Reload the server configurations - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() @@ -958,7 +947,6 @@ class ServerNode(PGChildNodeView): try: data = request.form restore_point_name = data['value'] if data else None - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() @@ -1033,7 +1021,6 @@ class ServerNode(PGChildNodeView): if user is None: return unauthorized(gettext("Unauthorized request.")) - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() @@ -1100,7 +1087,6 @@ class ServerNode(PGChildNodeView): ) try: - from pgadmin.utils.driver import get_driver manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid) conn = manager.connection() diff --git a/web/pgadmin/utils/driver/psycopg2/__init__.py b/web/pgadmin/utils/driver/psycopg2/__init__.py index 2d6239f..1ad3aa8 100644 --- a/web/pgadmin/utils/driver/psycopg2/__init__.py +++ b/web/pgadmin/utils/driver/psycopg2/__init__.py @@ -1721,6 +1721,17 @@ class Driver(BaseDriver): """ return self.connection_manager(sid).release(database, conn_id) + def delete_manager(self, sid): + """ + Delete manager for given server id. + """ + manager = self.connection_manager(sid) + if manager is not None: + manager.release() + if session['_id'] in self.managers and \ + str(sid) in self.managers[session['_id']]: + del self.managers[session['_id']][str(sid)] + def gc(self): """ Release the connections for the sessions, which have not pinged the
-- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers