Thread: nwjs hogging CPU

nwjs hogging CPU

From
Dave Caughey
Date:
If this is a known issue with a work-around, let me know.  Otherwise, I can log a github issue.

I haven't quite narrowed down the circumstances, but here's roughly the test case
  1. I fire up pgAdmin, and create a bunch of tabs, and stop work at the end of the day, leaving pgAdmin open.
  2. In the morning, I start work again, and pgAdmin is like molasses.  E.g., it takes 30 seconds to close a query tab, only to get the "You have unsaved changes" confirmation, whereupon it takes another minute for the tab to actually close.  Similarly, switching tabs can take minutes.  Basically, pgAdmin is basically completely non-responsive.
During this time, nwjs is spinning wildly... I'm guessing it's pegged one of the CPU cores at 100%.

After about a half hour or so, nwjs calms down, and then switching tabs is very responsive and I can rerun queries with no problem.   BUT... if I then close one of the tabs, it again pegs the nwjs for several minutes, during which pgAdmin is completely non-responsive.

I'd stop pgAdmin and restart it, but then I'd lose all of my queries and data filters.   Has any thought been given to having pgAdmin just persist the currently-open tabs and the query/filter text contained therein, so when you restart it could do what browsers do and offer to reopen the same tabs?

Cheers,
Dave

Re: nwjs hogging CPU

From
Akshay Joshi
Date:
Hi Dave

On Thu, Nov 3, 2022 at 8:14 PM Dave Caughey <caugheyd@gmail.com> wrote:
If this is a known issue with a work-around, let me know.  Otherwise, I can log a github issue.

I haven't quite narrowed down the circumstances, but here's roughly the test case
  1. I fire up pgAdmin, and create a bunch of tabs, and stop work at the end of the day, leaving pgAdmin open.
  2. In the morning, I start work again, and pgAdmin is like molasses.  E.g., it takes 30 seconds to close a query tab, only to get the "You have unsaved changes" confirmation, whereupon it takes another minute for the tab to actually close.  Similarly, switching tabs can take minutes.  Basically, pgAdmin is basically completely non-responsive.
During this time, nwjs is spinning wildly... I'm guessing it's pegged one of the CPU cores at 100%.

After about a half hour or so, nwjs calms down, and then switching tabs is very responsive and I can rerun queries with no problem.   BUT... if I then close one of the tabs, it again pegs the nwjs for several minutes, during which pgAdmin is completely non-responsive.

I'd stop pgAdmin and restart it, but then I'd lose all of my queries and data filters.   Has any thought been given to having pgAdmin just persist the currently-open tabs and the query/filter text contained therein, so when you restart it could do what browsers do and offer to reopen the same tabs?

   There is a bug in v6.15 that we're trying to fix. We hope to have this fixed in version 6.16. 

Cheers,
Dave


--

Akshay Joshi

Principal Software Architect

+91 9767888246

www.enterprisedb.com