Re: Request for feedback: Alternate desktop runtime architecture

From: "Barrington-Hughes, Alan" <Alan_Barrington-Hughes(at)PremierInc(dot)com>
To: Dave Page <dpage(at)pgadmin(dot)org>, "pgadmin-hackers(at)lists(dot)postgresql(dot)org" <pgadmin-hackers(at)lists(dot)postgresql(dot)org>, "pgadmin-support lists(dot)postgresql(dot)org" <pgadmin-support(at)lists(dot)postgresql(dot)org>
Subject: Re: Request for feedback: Alternate desktop runtime architecture
Date: 2018-01-23 21:55:45
Message-ID: C67C2B24-9964-4021-AACB-4CC4B7C25EF5@PremierInc.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers pgadmin-support

Thanks Dave for positing this different approach to eliminate some of the Qt rendering overhead.

I can say, running on a 2017 mac book pro (10.13.2), the speed improvement is noticeable. The increased speed that tree nodes expand and result grids present are very appreciated.

I am hoping that a next step would be present the UI loaded from 1.27.0.0.1 within a pgAdmin4 branded window, as Command-Tabbing to pgAdmin4 is preferable to finding a Safari window amongst the numerous Safari windows/tabs I usually have open.

Keep up the good work and thanks!

Alan

From: Dave Page <dpage(at)pgadmin(dot)org>
Date: Tuesday, January 23, 2018 at 9:48 AM
To: "pgadmin-hackers(at)lists(dot)postgresql(dot)org" <pgadmin-hackers(at)lists(dot)postgresql(dot)org>, "pgadmin-support lists.postgresql.org" <pgadmin-support(at)lists(dot)postgresql(dot)org>
Subject: Request for feedback: Alternate desktop runtime architecture

****This email did not originate from the Premier, Inc. network. Use caution when opening attachments or clicking on URLs.*****

.

All,

As you may know, the most troublesome part of pgAdmin 4 has been the desktop runtime application, which has relied on QtWebKit and QtWebEngine (of various origins and versions) to render the UI as part of the Qt framework.

This has caused performance issues, rendering issues with remote desktop sessions, keyboard navigation issues and more. It probably accounts for 25% or more of the bugs reports we deal with.

Unfortunately, whilst there are alternatives to Qt for this purpose, none that we've found are mature enough for our purposes, and would require a significant amount of effort to add the features we would need to support pgAdmin.

I've therefore been experimenting with another approach in which pgAdmin is rendered in a regular web browser when running in desktop mode. Like some other similar applications, a server process is launched and lives in the system tray, from where it can be shutdown at any time, or new windows opened. When it is first started, it will launch a browser window to render pgAdmin automatically. If additional instances are launched, the previously running instance will be re-used to avoid wasting resources.

This is a proof of concept at the moment, for which I would appreciate any feedback. Windows and Mac builds can be found here:

https://developer.pgadmin.org/~dpage/runtime-revamp/

and the GIT branch can be found here:

https://git.postgresql.org/gitweb/?p=pgadmin4.git;a=shortlog;h=refs/heads/runtime-revamp

Thanks!

--

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

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

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Khushboo Vashi 2018-01-24 04:12:00 Re: Table Properties... > [Columns tab] very slow
Previous Message Seçkin Alan 2018-01-23 21:37:50 Re: Request for feedback: Alternate desktop runtime architecture

Browse pgadmin-support by date

  From Date Subject
Next Message Khushboo Vashi 2018-01-24 04:12:00 Re: Table Properties... > [Columns tab] very slow
Previous Message Seçkin Alan 2018-01-23 21:37:50 Re: Request for feedback: Alternate desktop runtime architecture