Re: Content assist / autocomplete hangs the server (latest pgAdmin version) - Mailing list pgadmin-support

From Aditya Toshniwal
Subject Re: Content assist / autocomplete hangs the server (latest pgAdmin version)
Date
Msg-id CAM9w-_kKeBOB4PO7ivHsdDkTyD3NR8afZkSo98=LpC7uhAsQuQ@mail.gmail.com
Whole thread Raw
In response to Re: Content assist / autocomplete hangs the server (latest pgAdmin version)  (Cherio <cherio@gmail.com>)
Responses Re: Content assist / autocomplete hangs the server (latest pgAdmin version)  (Akshay Joshi <akshay.joshi@enterprisedb.com>)
List pgadmin-support
Akshay,

We need to think on cancelling the autocomplete in the backend after a certain timeout.

On Fri, Aug 5, 2022 at 7:08 PM Cherio <cherio@gmail.com> wrote:
Thanks Akshay, that's what I meant by "switched autocomplete to manual".

That however doesn't really address the issue. I can still bring down the pgAdmin backend (for everyone using it) by clicking Ctrl+Space on a complex/rogue SQL.

On Fri, Aug 5, 2022 at 4:35 AM Akshay Joshi <akshay.joshi@enterprisedb.com> wrote:
Hi Cherio

You can disable the automatic autocomplete option from "File -> Preferences -> Query Tool -> Auto completion -> Autocomplete on key press". We have also fixed an issue to stop autocomplete on arrow keys #7573 which will be available in the next release, meanwhile, you can install the snapshot build.



On Wed, Aug 3, 2022 at 11:39 PM Cherio <cherio@gmail.com> wrote:
I had to examine certain aspects of a query that looks like this:

SELECT COUNT(*)
FROM schema.table
WHERE id IN (
'1',
'2',
'3',
....
'19998',
'19999',
'20000'
)

I pasted the query and autocomplete kicked in. For a minute it froze entirely. Then it sort of let me do things but everything was like in slow motion: the tree browser, the other SQL tabs - everything became slow as molasses. I logged onto the server and the "pgAdmin4.py" was keeping the CPU quite busy. It didn't recover for some time so I simply restarted the server and switched autocomplete to manual.

Not knowing the design I may not be able to make a viable suggestion but maybe some sort of complexity counter (configurable or at least hard-coded at first) should be considered, which would hint to the autocomplete to stop trying, after it realizes the task may be too complex or takes too long to complete.

Sure, a query like the one above should probably make use of a temporary table but it is beyond the point - there has to be a safeguard against an overloaded autocomplete. Without such a safeguard an ugly/invalid query or a user error could kill the server for all connected pgadmin clients.


--

Akshay Joshi

Principal Software Architect

+91 9767888246

www.enterprisedb.com

     



--
Thanks,
Aditya Toshniwal
pgAdmin Hacker | Software Architect | edbpostgres.com
"Don't Complain about Heat, Plant a TREE"

pgadmin-support by date:

Previous
From: Cherio
Date:
Subject: Re: Content assist / autocomplete hangs the server (latest pgAdmin version)
Next
From: Akshay Joshi
Date:
Subject: Re: Content assist / autocomplete hangs the server (latest pgAdmin version)