Dear Laurenz,

Thank you for your help. As you suspected, I was seeking a way to view the
execution plan of a function defined in SQL. Your suggestion was exactly
what I needed and has been very helpful.

Additionally, I also appreciated learning about the debugging techniques
for PL/pgSQL. Thank you for your valuable advice.

Best regards,

Katsuya Okizaki

2023年2月8日(水) 19:18 Laurenz Albe <laurenz.a...@cybertec.at>:

> On Wed, 2023-02-08 at 08:49 +0900, Katsuya Okizaki wrote:
> > In a normal SQL, we can use the EXPLAIN command to view the execution
> plan.
> > However, in this case, I am not sure how a user-defined function work.
> >
> > If anyone has faced a similar situation and found a way to view the
> execution plan,
> > I would greatly appreciate your insights and suggestions.
>
> I am not sure which of the following you want:
>
> 1. Get the execution plan of SQL statements run inside a function:
>
>    For that, you would use "auto_explain" with
> "auto_explain.log_nested_statements = on".
>
> 2. Get a trace of the execution of the function code itself:
>
>    For PL/pgSQL, there is "pldebugger" (
> https://github.com/EnterpriseDB/pldebugger),
>    which can be used together with pgAdmin.
>
>    I usually sprinkle the code with RAISE NOTICE statements.
>
> Yours,
> Laurenz Albe
> --
> Cybertec | https://www.cybertec-postgresql.com
>

Reply via email to