Re: Server side session management using the SQLite (per session) database - Mailing list pgadmin-hackers

From Dave Page
Subject Re: Server side session management using the SQLite (per session) database
Date
Msg-id CA+OCxowFDgnKBm6ujjs1+Gqh1N7Yq7eX7_VtRVajErd=BL=Mdw@mail.gmail.com
Whole thread Raw
In response to Re: Server side session management using the SQLite (per session) database  (Ashesh Vashi <ashesh.vashi@enterprisedb.com>)
List pgadmin-hackers


On Wed, Mar 23, 2016 at 7:32 AM, Ashesh Vashi <ashesh.vashi@enterprisedb.com> wrote:
On Tue, Mar 22, 2016 at 8:41 PM, Dave Page <dpage@pgadmin.org> wrote:
Hi

On Thu, Mar 17, 2016 at 5:46 PM, Ashesh Vashi <ashesh.vashi@enterprisedb.com> wrote:
Hi Dave/team,

As discussed, I have implemented the server side session management using the SQLite database.

Implementation:
* It creates/reuses the sqlite database per session.
* Stores the key (as text)/value (as blob) in the sqlite database.
* Needs to provide the session directory, where you want to store those sessions. If this directory does not exist, it creates the directory with 700 permission. (Default: <USER_HOME>/.pgadmin/sessions directory.)
* Also - sets default value for the log file to be stored in the '<USER_HOME>/.pgadmin' directory. This will allow us to keep separate configuration per user on any operation system, when running through runtime.

This implementation uses sqlite as session storage, it may affect because of explicit file system I/O operation. Though - performance should not be a big issue, as we're not targeting to support very huge parallel sessions.

Thanks - applied.
Thanks. 

I assume it's expected at this point that new connections still fail if the backend is restarted (that would come with graceful reconnections)?
Hmm..
I did not get that.

Do you mean to say?
- New Connection to the server should not be established (if it was restarted).
- What about the existing connection, should it re-establish the connection after the backend restart (when allowed)?

There are still some cases, even with the graceful reconnection patch, where reconnections don't happen and you get a red alert message on the UI. I've yet to figure out exactly what they are though - but I think whether the pgAdmin server or the Python server has restarted or dropped connections, they should gracefully be re-established. 

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

pgadmin-hackers by date:

Previous
From: Ashesh Vashi
Date:
Subject: Re: Server side session management using the SQLite (per session) database
Next
From: Magnus Hagander
Date:
Subject: Re: Server side session management using the SQLite (per session) database