Resolved couple of small bugs introduced during database server
connection management implementation.pull/3/head
parent
a0cfddffdf
commit
c53b57a013
|
@ -493,7 +493,7 @@ class ServerNode(NodeView):
|
|||
"""Check and return the connection status."""
|
||||
from pgadmin.utils.driver import get_driver
|
||||
manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
|
||||
conn = manager.get_connection()
|
||||
conn = manager.connection()
|
||||
|
||||
return make_json_response(data={'connected': conn.connected()})
|
||||
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
.icon-server {
|
||||
background-image: url('{{ url_for('NODE-server.static', filename='img/server.png') }}') !important;
|
||||
border-radius: 10px
|
||||
border-radius: 10px;
|
||||
background-repeat: no-repeat;
|
||||
align-content: center;
|
||||
vertical-align: middle;
|
||||
height: 1.3em;
|
||||
}
|
||||
|
||||
.icon-server-not-connected {
|
||||
|
|
|
@ -203,22 +203,22 @@
|
|||
background-color: #A44;
|
||||
}
|
||||
|
||||
.wcButtonHover, .wcButton:hover, button:hover {
|
||||
.wcButtonHover, .wcButton:hover {
|
||||
border: 1px outset #B66;
|
||||
background-color: #B66;
|
||||
}
|
||||
|
||||
.wcButtonActive, .wcButton:active, button:active {
|
||||
.wcButtonActive, .wcButton:active {
|
||||
border: 1px inset #B66;
|
||||
background-color: #B66;
|
||||
}
|
||||
|
||||
.wcButtonActive.wcButtonHover, .wcButton:hover.wcButtonActive, .wcButton:active.wcButtonHover, .wcButton:active:hover, button:active:hover {
|
||||
.wcButtonActive.wcButtonHover, .wcButton:hover.wcButtonActive, .wcButton:active.wcButtonHover, .wcButton:active:hover {
|
||||
border: 1px inset #C88;
|
||||
background-color: #C88;
|
||||
}
|
||||
|
||||
.wcButtonDisabled, .wcButton.disabled, button:disabled {
|
||||
.wcButtonDisabled, .wcButton.disabled {
|
||||
border: 1px outset #933 !important;
|
||||
background-color: #933 !important;
|
||||
color: #533 !important;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
require(
|
||||
['alertify'],
|
||||
function(alertify) {
|
||||
['alertify', 'underscore.string'],
|
||||
function(alertify, S) {
|
||||
alertify.defaults.transition = "zoom";
|
||||
alertify.defaults.theme.ok = "btn btn-primary";
|
||||
alertify.defaults.theme.cancel = "btn btn-danger";
|
||||
|
|
|
@ -418,7 +418,8 @@ class ServerManager(object):
|
|||
def connection(self, database=None, conn_id=None, auto_reconnect=True):
|
||||
|
||||
my_id = ('CONN:' + str(conn_id)) if conn_id is not None else \
|
||||
('DB:' + str(database))
|
||||
('DB:' + (str(database) if database is not None else \
|
||||
self.db))
|
||||
|
||||
self.pinged = datetime.now()
|
||||
|
||||
|
@ -507,7 +508,7 @@ class Driver(BaseDriver):
|
|||
managers = self.managers[session['_id']]
|
||||
|
||||
managers['pinged'] = datetime.datetime.now()
|
||||
if sid not in managers:
|
||||
if str(sid) not in managers:
|
||||
from pgadmin.settings.settings_model import Server
|
||||
s = Server.query.filter_by(id=sid).first()
|
||||
|
||||
|
@ -560,16 +561,16 @@ class Driver(BaseDriver):
|
|||
connection, and it stops working on disconnection.
|
||||
|
||||
"""
|
||||
manager = connection_manager(sid)
|
||||
manager = self.connection_manager(sid)
|
||||
|
||||
return manager.connection(database, conn_id, connect, **kwargs)
|
||||
return manager.connection(database, conn_id, auto_reconnect)
|
||||
|
||||
def release_connection(self, sid, database=None, conn_id=None):
|
||||
"""
|
||||
Release the connection for the given connection-id/database in this
|
||||
session.
|
||||
"""
|
||||
return connection_manager(sid).release(database, conn_id)
|
||||
return self.connection_manager(sid).release(database, conn_id)
|
||||
|
||||
def gc(self):
|
||||
"""
|
||||
|
@ -577,13 +578,10 @@ class Driver(BaseDriver):
|
|||
server for more than config.MAX_SESSION_IDLE_TIME.
|
||||
"""
|
||||
import datetime
|
||||
from config import MAX_SESSION_IDLE_TIME
|
||||
|
||||
assert(MAX_SESSION_IDLE_TIME is not None and
|
||||
isinstance(MAX_SESSION_IDLE_TIME, int))
|
||||
import config
|
||||
|
||||
# Mininum session idle is 20 minutes
|
||||
max_idle_time = max(MAX_SESSION_IDLE_TIME, 20)
|
||||
max_idle_time = max(config.MAX_SESSION_IDLE_TIME or 60, 20)
|
||||
session_idle_timeout = datetime.timedelta(minutes=max_idle_time)
|
||||
|
||||
curr_time = datetime.datetime.now()
|
||||
|
|
Loading…
Reference in New Issue