Re: Add pg_get_injection_points() for information of injection points

From: Ranier Vilela <ranier(dot)vf(at)gmail(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Postgres hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Add pg_get_injection_points() for information of injection points
Date: 2025-04-14 12:46:12
Message-ID: CAEudQAruWdvjS98g+y1ErHUqfUiwuh6PLnjwO50KGCmjE6DjCA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Michael.

Em dom., 13 de abr. de 2025 às 21:36, Michael Paquier <michael(at)paquier(dot)xyz>
escreveu:

> Hi all,
>
> One thing that's been lacking in injection points is the possibility
> to look at the state of the injection points in shared memory through
> some SQL. This was on my tablets for some time, but I have not taken
> the time to do the actual legwork.
>
> The attached patch adds a SRF that returns a set of tuples made of the
> name, library and function for all the injection points attached to
> the system. This implementation relies on a new function added in
> injection_point.c, called InjectionPointList(), that retrieves a
> palloc()'d array of the injection points, hiding from the callers the
> internals of what this stuff does with the shmem array lookup.
>
> This is useful for monitoring or in tests, to make sure for example
> that nothing is left around at the end of a script. I have a
> different proposal planned for this area of the code, where this
> function would be good to have, but I am sending an independent patch
> as this stuff is useful on its own.
>
> The patch includes a couple of tests and some documentation.
>
I think that it would be more productive to use the "int idx", to store
*num_points,
avoiding counting inside the loop, no?

Function InjectionPointList:
+ uint32 max_inuse;
+ int idx;
+ for (idx = 0; idx < max_inuse; idx++)- (*num_points)++;
+ *num_points = idx;
+ return result;

The function *InjectionPointList* counts "int", but the function
*pg_get_injection_points* expects uint32?

best regards,
Ranier Vilela

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Nazir Bilal Yavuz 2025-04-14 12:55:40 Re: New committer: Jacob Champion
Previous Message Thomas Munro 2025-04-14 12:41:18 Using pg_bitutils.h in tidbitmap.c.