Re: Is pgAdmin the only front-end to PostgreSQL debugger ? And is "a working pl/pgsql debugger" something core should care to maintain ? - Mailing list pgsql-hackers

From Hannu Krosing
Subject Re: Is pgAdmin the only front-end to PostgreSQL debugger ? And is "a working pl/pgsql debugger" something core should care to maintain ?
Date
Msg-id CAMT0RQR=3s=2rNf43xK=x1BiJD+D0HG36OGbQ9ZT9z-Y1RrP+g@mail.gmail.com
Whole thread Raw
In response to Re: Is pgAdmin the only front-end to PostgreSQL debugger ? And is "a working pl/pgsql debugger" something core should care to maintain ?  (Pavel Stehule <pavel.stehule@gmail.com>)
Responses Re: Is pgAdmin the only front-end to PostgreSQL debugger ? And is "a working pl/pgsql debugger" something core should care to maintain ?
List pgsql-hackers
On Thu, Feb 13, 2025 at 8:10 PM Pavel Stehule <pavel.stehule@gmail.com> wrote:
>
> Hi
>
> čt 13. 2. 2025 v 18:00 odesílatel Hannu Krosing <hannuk@google.com> napsal:
>>
>> Hallo PostgreSQL Hackers,
>>
>>
>> We recently discovered an error where pgAdmin fails when stepping into
>> nested function calls (
>> https://github.com/pgadmin-org/pgadmin4/issues/8443 ).
>>
>> So while waiting for this to be fixed I would want to know if there
>> are other debugger front-ends that could be used to do basic debugging
>> of pl/pgsql code ?
>
>
> If I remember, there was a independent application that was a plpgsql debugger, but it was in time before pgadmin 4
>
...
>> Should there perhaps be debugging support in psql ?
>
> psql does not support asynchronous API, so the implementation in psql really should not be simple. Moreover,
> I doubt that users want to use a debugger with a GUI similar to gdb.

It would be good to have some simple fallback in case the shiny GUI
things don't work.

For example python has its pdb module and node.js has a "debugging
mode" where you can set breakpoints and single-step through your code.

> And it isn't possible to design a better UI directly in psql. I can imagine supporting some external debuggers
executedinside / or outside the same terminal that communicates with psql by some bidirect pipe (psql will be used like
aproxy).  Then can be designed some application similar to Borland debugger. This can be a very nice feature with
probablynot too much code, but handling bidirect pipes isn't trivial. Tuning reading from pipe for pspg for some less
usualpatterns was not nice work (and there the communication is significantly more simple than for debugger). 

So a possibly better way could be adding pl/pgsql debugging support to
something widely used like VSCode ?

--
Hannu



pgsql-hackers by date:

Previous
From: Jacob Champion
Date:
Subject: Re: dblink: Add SCRAM pass-through authentication
Next
From: Thomas Munro
Date:
Subject: Re: Confine vacuum skip logic to lazy_scan_skip