Hi,
On 2018-10-04 12:15:28 -0700, Lukas Fittl wrote:
> Hi all,
>
> It seems that currently procedures do not get tracked when track_functions
> is enabled, which means one needs to resort to other workarounds in order
> to monitor procedure calls/runtime.
>
> To illustrate:
>
> =# SHOW track_functions;
> ┌─────────────────┐
> │ track_functions │
> ├─────────────────┤
> │ all │
> └─────────────────┘
> (1 row)
>
> =# CALL abc();
> CALL
>
> =# SELECT def();
> ┌─────┐
> │ def │
> ├─────┤
> │ │
> └─────┘
> (1 row)
>
> =# SELECT * FROM pg_stat_user_functions;
> ┌─[ RECORD 1 ]────────────────────┐
> │ funcid │ 75223 │
> │ schemaname │ public │
> │ funcname │ def │
> │ calls │ 1 │
> │ total_time │ 3.222 │
> │ self_time │ 3.222 │
> └────────────┴────────────────────┘
>
> Was this intentional, or an oversight?
>
> If welcome, I would be happy to work on a patch. Whilst slightly confusing
> in terms of naming, we could just track this together with functions, since
> one can always join with pg_proc to determine whether something is a
> function or a procedure.
Yea, that sounds wrong / not ideal to me. I think we should just fix
this, should be easy enough.
- Andres