On Fri, Mar 14, 2025 at 11:44 PM Florents Tselai <florents.tse...@gmail.com>
wrote:

>
> On Fri, Mar 14, 2025 at 4:16 PM Nathan Bossart <nathandboss...@gmail.com>
> wrote:
>
>> On Thu, Mar 13, 2025 at 06:54:09PM +0200, Florents Tselai wrote:
>> > I扉e been working with the DSM registry API.
>> > I was wondering if it is possible (it doesn愒 look like it) or if it has
>> been discussed:
>> > can we expose a view like pg_shmem_allocations, but fine-grained for
>> every named segment (i.e. created by GetNamedDSMSegment )?
>> >
>> > Currently, there is a "DSM Registry Data" entry in that view,
>> > but iiuc, it愀 only about the top-level hash table the registry uses.
>>
>> This seems like a generally reasonable idea to me.  In theory, it should
>> be
>> easy enough to build something that walks through the DSM registry hash
>> table.
>>
>
>  Here's a first attempt towards a view pg_dsm_registry(name, size) that
> does just that
> So, using the test_dsm_registry module as a test bed,
>
> it would look like this.
>
> CREATE EXTENSION test_dsm_registry;
> SELECT set_val_in_shmem(1236);
>  set_val_in_shmem
> ------------------
>
> (1 row)
>
> -- 20 bytes = int (4 bytes) + LWLock (16bytes)
> SELECT * FROM pg_dsm_registry;
>        name        | size
> -------------------+------
>  test_dsm_registry |   20
> (1 row)
>
> I'll create a cf entry to keep track of this
>
>
Here's an updated v3 that fixes some white spaces v2 had—no other changes.

I'm wondering though if it also makes sense to expose:
- backend_pid (who created the segment)
- is_pinned bool
- created_at

https://commitfest.postgresql.org/patch/5652/

Attachment: v3-0001-pg_dsm_registry-view.patch
Description: Binary data

Reply via email to